关于springboot整合jpa: https://blog.csdn.net/qq_35387940/article/details/10254131
jpa使用@Query 多表关联、传参: https://blog.csdn.net/qq_35387940/article/details/102545849

正题,很多人使用Springboot整合JPA后,都会在配置文件中设置配置项 show-sql:

但是这仅仅也就打印了每次执行的SQL语句,如:

显然,没有传入的参数。

在配置文件中加入日志配置项:

logging:
  level:
    org.springframework.security:
      - debug
      - info
    org.springframework.web: error
    org.hibernate.SQL: debug
    org.hibernate.engine.QueryParameters: debug
    org.hibernate.engine.query.HQLQueryPlan: debug
    org.hibernate.type.descriptor.sql.BasicBinder: trace

然后是测试的查询方法:

    @Query(value="select * from user where name=(:name)",nativeQuery = true)
    User getUserByName(@Param("name") String name);

调用接口,传入name:

看看控制台日志的打印:

可以看到SQL语句以及这语句的传入绑定参数都在日志中有打印了(这时候其实show-sql可以关闭掉)



等等,其实还没完,这样就满足了吗?
真正我们想要的就仅仅这样吗?
想要的是这种效果:

请参考我的这篇 高阶:

https://blog.csdn.net/qq_35387940/article/details/102563845

文章目录 Springboot JPA - 显示 日志 形式的 sql 语句以及 参数 1、去掉 show sql 2、 日志 配置3、 打印 形式 Springboot JPA - 显示 日志 形式的 sql 语句以及 参数 1、去掉 show sql # spring : # jpa : # show- sql : true 2、 日志 配置 logging: level: hibernate: SQL : debug type: descript
<groupId>com.googlecode.log4jdbc</groupId> <artifactId>log4jdbc</artifactId> <version>1.2</version> datasource: driver-class-name: com.my sql .cj.jdbc.Driver driver-class-name: net.sf.log4jdbc. sql .jdbcapi.DriverSpy url: jdbc:my sql ://localhost:3306/testdemo?useSSL=false&useUnicode=true&char
一般Log4J或Slf4J默认输出级别最低也是DEBUG,而 参数 值输出的LEVEL级别是TRACE,所以需要指定 日志 的LEVEL为TRACE log4j2- spring .xml配置文件增加 <Loggers> <Root level="INFO"> <AppenderRef ref="Console" /> <AppenderRef ref="File" /> </Root> <logger name="org.hibernat
logging.level.org.hibernate. SQL =DEBUG logging.level.org.hibernate.type.descriptor. sql .BasicBinder=TRACE spring : jpa : properties: hibernate: show_ sql : true format_ sql : true...
先说 springboot 整合 jpa PA(java persistence api),它并不是一个框架,而是一组规范。其中,Hibernate就实现了这个规范,而且是相当成功的(其实TopLink和Open JPA 也都实现了 JPA 规范,不过它们被Hinernate的光环笼罩了)。所以呢,当我们说到 JPA 的时候,好多人首先想到的就是Hibernate。 一,创建工程时把依赖添加上 二,配置yml文件 ######## springboot 整合 jpa 配置 spring : devtools: spring . jpa .show- sql =true spring . jpa .properties.hibernate.format_ sql =true logging.level.org.hibernate. SQL =debug 2. 在application.yml文件中添加以下属性: spring : jpa : show- sql : true properties: hibernate: format_ sql : true datasource: hikari: # ... logging: level: org.hibernate. SQL : debug 以上两种方法都可以 打印 JPA 执行的 SQL语句 ,其中第一种方法使用的是properties文件,第二种方法使用的是yml文件。需要注意的是,第二种方法中的属性名需要使用驼峰命名法。