spring boot中nativeQuery的用法


Posted in Java/Android onJuly 26, 2021

Springboot入门介绍

spring boot就是一个大框架里面包含了许许多多的东西,其中spring就是最核心的内容之一,当然就包含spring mvc。
spring mvc 是只是spring 处理web层请求的一个模块。

因此他们的关系大概就是这样:
spring mvc < spring <springboot。

Spring框架概述

什么是Spring

Spring是一个开源框架,Spring是于2003 年兴起的一个轻量级的Java 开发框架,由Rod Johnson 在其著作《Expert One-On-One J2EE Development and Design》。Spring是为了解决企业级应用开发的复杂性而创建的,使用Spring可以让简单的JavaBean实现之前只有EJB才能完成的事情。但是Spring不仅仅局限于服务器端开发,任何Java应用都能在简单性、可测试性和松耦合性等方面从Spring中获益。

nativeQuery = true的作用

当语句中有 nativeQuery = true时, @Query中的sql语句可以为自己手写的原生sql,并且写的原生sql是可以执行的,例如:

@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);

当执行@Query时,会将该"select u.username,u.password from t_user u where u.username = ?1 and u.password = ?2"拷贝到数据库,并填充占位符。但是执行语句时,有一个要求就是语句中的表名(t_user)和字段名(username,password)必须为数据库中的表名和字段名,

当没有nativeQuery = true时,@Query中value值的sql语句就只能按照规范来写。否则就会报错

 Error creating bean with name 'userMapper' defined in com.example.demo.dao.UserMapper defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar

规范就是:表名必须是所写的实体类名,字段名也必须是实体类中的自定义的变量名,例如:

@Query(value = "select u.userName from User u where u.userName = ?1")
    List<User> findByUserName(String username);

到此这篇关于spring boot中nativeQuery的作用的文章就介绍到这了,更多相关spring boot中nativeQuery内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Java/Android 相关文章推荐
解决Maven项目中 Invalid bound statement 无效的绑定问题
Jun 15 Java/Android
浅谈什么是SpringBoot异常处理自动配置的原理
Jun 21 Java/Android
Java如何实现树的同构?
Jun 22 Java/Android
Java循环队列与非循环队列的区别总结
Jun 22 Java/Android
Spring Boot 整合 Apache Dubbo的示例代码
Jul 04 Java/Android
Spring Boot mybatis-config 和 log4j 输出sql 日志的方式
Jul 26 Java/Android
SpringBoot整合RabbitMQ的5种模式实战
Aug 02 Java/Android
springboot+zookeeper实现分布式锁
Mar 21 Java/Android
Java对文件的读写操作方法
Apr 29 Java/Android
Java Spring Lifecycle的使用
May 06 Java/Android
AndroidStudio图片压缩工具ImgCompressPlugin使用实例
Aug 05 Java/Android
Java结构型设计模式之组合模式详解
Sep 23 Java/Android
java泛型通配符详解
Jul 25 #Java/Android
SpringBoot SpringEL表达式的使用
Jul 25 #Java/Android
SpringRetry重试框架的具体使用
Java反应式框架Reactor中的Mono和Flux
关于springboot 配置date字段返回时间戳的问题
Jul 25 #Java/Android
用Java实现简单计算器功能
java设计模式--七大原则详解
You might like
ThinkPHP 防止表单重复提交的方法
2011/08/08 PHP
php中的PHP_EOL换行符详细解析
2013/10/26 PHP
php封装的smartyBC类完整实例
2016/10/19 PHP
PHP中register_shutdown_function函数的基础介绍与用法详解
2017/11/28 PHP
Discuz不使用插件实现简单的打赏功能
2019/03/21 PHP
让div层随鼠标移动的实现代码 ie ff
2009/12/18 Javascript
起点页面传值js,有空研究学习下
2010/01/25 Javascript
JQuery Dialog(JS 模态窗口,可拖拽的DIV)
2010/02/07 Javascript
DIY jquery plugin - tabs标签切换实现代码
2010/12/11 Javascript
javascript学习笔记(十九) 节点的操作实现代码
2012/06/20 Javascript
javascript 系统文件夹文件操作及参数介绍
2013/01/08 Javascript
JavaScript中Date对象的常用方法示例
2015/10/24 Javascript
浅谈javascript的call()、apply()、bind()的用法
2016/02/21 Javascript
AngularJS整合Springmvc、Spring、Mybatis搭建开发环境
2016/02/25 Javascript
关于backbone url请求中参数带有中文存入数据库是乱码的快速解决办法
2016/06/13 Javascript
javascript运算符——位运算符全面介绍
2016/07/14 Javascript
基于React实现表单数据的添加和删除详解
2017/03/14 Javascript
js实现自定义进度条效果
2017/03/15 Javascript
微信小程序 后台登录(非微信账号)实例详解
2017/03/31 Javascript
vue.js利用defineProperty实现数据的双向绑定
2017/04/28 Javascript
微信小程序实现的一键复制功能示例
2019/04/24 Javascript
ES6 Symbol数据类型的应用实例分析
2019/06/26 Javascript
微信小程序换肤功能实现代码(思路详解)
2020/08/25 Javascript
JavaScript canvas实现跟随鼠标移动小球
2021/02/09 Javascript
使用Python获取并处理IP的类型及格式方法
2018/11/01 Python
对python 中class与变量的使用方法详解
2019/06/26 Python
关于tf.matmul() 和tf.multiply() 的区别说明
2020/06/18 Python
Python-openCV开运算实例
2020/07/05 Python
Django:使用filter的pk进行多值查询操作
2020/07/15 Python
详解CSS 3 中的 calc() 方法
2018/01/12 HTML / CSS
希尔顿酒店中国网站:Hilton中国
2017/03/11 全球购物
PHP面试题大全
2015/10/16 面试题
光声世纪笔试题目
2012/08/25 面试题
渔夫的故事教学反思
2014/02/14 职场文书
学生不讲诚信检讨书
2014/09/29 职场文书
学生个人评语大全
2015/01/04 职场文书