SpringBoot打印SQL配置
时间: 2023-07-04 07:06:02 浏览: 131
SpringBoot的配置文件
在Spring Boot中,可以通过配置文件或者代码的方式来打印SQL语句。以下是两种常见的方法:
1. 配置文件方式
在application.properties或者application.yml文件中添加如下配置:
```properties
# 打印 sql
spring.jpa.show-sql=true
# 格式化 sql
spring.jpa.properties.hibernate.format_sql=true
```
2. 代码方式
在Spring Boot启动类中配置如下:
```java
import org.hibernate.jpa.HibernatePersistenceProvider;
import javax.persistence.EntityManagerFactory;
import javax.sql.DataSource;
@SpringBootApplication
public class Application {
public static void main(String[] args) {
SpringApplication.run(Application.class, args);
}
@Autowired
private DataSource dataSource;
@Autowired
private EntityManagerFactory entityManagerFactory;
@PostConstruct
public void init() {
org.hibernate.jpa.HibernateEntityManagerFactory hibernateEntityManagerFactory = (org.hibernate.jpa.HibernateEntityManagerFactory) entityManagerFactory;
hibernateEntityManagerFactory.getSessionFactory().getStatistics().setStatisticsEnabled(true);
}
@Bean
public HibernatePersistenceProvider hibernatePersistenceProvider() {
return new HibernatePersistenceProvider();
}
@Bean
public HibernateJpaSessionFactoryBean sessionFactory() {
HibernateJpaSessionFactoryBean sessionFactory = new HibernateJpaSessionFactoryBean();
sessionFactory.setDataSource(dataSource);
return sessionFactory;
}
}
```
以上代码使用了org.hibernate.jpa.HibernateEntityManagerFactory来打开SQL日志记录。但是请注意,这种方式只适用于Hibernate作为JPA实现的情况。如果使用其他的JPA实现,可能需要使用不同的配置方式。
阅读全文