spring boot中nativeQuery的用法
spring boot就是一個(gè)大框架里面包含了許許多多的東西,其中spring就是最核心的內(nèi)容之一,當(dāng)然就包含spring mvc。spring mvc 是只是spring 處理web層請(qǐng)求的一個(gè)模塊。
因此他們的關(guān)系大概就是這樣:spring mvc < spring <springboot。
Spring框架概述什么是SpringSpring是一個(gè)開(kāi)源框架,Spring是于2003 年興起的一個(gè)輕量級(jí)的Java 開(kāi)發(fā)框架,由Rod Johnson 在其著作《Expert One-On-One J2EE Development and Design》。Spring是為了解決企業(yè)級(jí)應(yīng)用開(kāi)發(fā)的復(fù)雜性而創(chuàng)建的,使用Spring可以讓簡(jiǎn)單的JavaBean實(shí)現(xiàn)之前只有EJB才能完成的事情。但是Spring不僅僅局限于服務(wù)器端開(kāi)發(fā),任何Java應(yīng)用都能在簡(jiǎn)單性、可測(cè)試性和松耦合性等方面從Spring中獲益。
nativeQuery = true的作用當(dāng)語(yǔ)句中有 nativeQuery = true時(shí), @Query中的sql語(yǔ)句可以為自己手寫(xiě)的原生sql,并且寫(xiě)的原生sql是可以執(zhí)行的,例如:
@Query(value = 'select u.username,u.password from t_user u where u.username = ?1 and u.password = ?2', nativeQuery = true) List<User> findByZH(String username, String password);
當(dāng)執(zhí)行@Query時(shí),會(huì)將該'select u.username,u.password from t_user u where u.username = ?1 and u.password = ?2'拷貝到數(shù)據(jù)庫(kù),并填充占位符。但是執(zhí)行語(yǔ)句時(shí),有一個(gè)要求就是語(yǔ)句中的表名(t_user)和字段名(username,password)必須為數(shù)據(jù)庫(kù)中的表名和字段名,
當(dāng)沒(méi)有nativeQuery = true時(shí),@Query中value值的sql語(yǔ)句就只能按照規(guī)范來(lái)寫(xiě)。否則就會(huì)報(bào)錯(cuò)
Error creating bean with name ’userMapper’ defined in com.example.demo.dao.UserMapper defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar
規(guī)范就是:表名必須是所寫(xiě)的實(shí)體類(lèi)名,字段名也必須是實(shí)體類(lèi)中的自定義的變量名,例如:
@Query(value = 'select u.userName from User u where u.userName = ?1') List<User> findByUserName(String username);
到此這篇關(guān)于spring boot中nativeQuery的作用的文章就介紹到這了,更多相關(guān)spring boot中nativeQuery內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. moment轉(zhuǎn)化時(shí)間戳出現(xiàn)Invalid Date的問(wèn)題及解決2. python爬蟲(chóng)實(shí)戰(zhàn)之制作屬于自己的一個(gè)IP代理模塊3. 如何在jsp界面中插入圖片4. 詳解盒子端CSS動(dòng)畫(huà)性能提升5. HTML 絕對(duì)路徑與相對(duì)路徑概念詳細(xì)6. asp批量添加修改刪除操作示例代碼7. .NET6打包部署到Windows Service的全過(guò)程8. Ajax返回值類(lèi)型與用法實(shí)例分析9. 解決ajax請(qǐng)求后臺(tái),有時(shí)收不到返回值的問(wèn)題10. ajax請(qǐng)求后臺(tái)得到j(luò)son數(shù)據(jù)后動(dòng)態(tài)生成樹(shù)形下拉框的方法
