在Spring Boot中的每个数据库连接的开头运行SQL语句
如何在使用Spring Boot获取数据库连接后直接运行自定义SQL语句?
每次建立新连接时都需要运行SQL。
该解决方案应该与Spring Boot默认DataSource实现(我认为是Tomcat池数据源)一起使用。
声明是什么并不重要,但在我的情况下,它将是ALTER SESSION SET CURRENT_SCHEMA=xxxx
Tomcat Jdbc连接池有一个参数“initSQL” https://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html
看起来您可以在.properties文件中配置每个池参数(@see https://stackoverflow.com/a/25573035/280244 )
所以试一试,
1.4之前的Spring Boot:
spring.datasource.initSQL=ALTER SESSION SET CURRENT_SCHEMA=xxxx
Spring Boot 1.4或更高版本:
spring.datasource.tomcat.initSQL=ALTER SESSION SET CURRENT_SCHEMA=xxxx
- 如何在spring中覆盖JndiObjectFactoryBean并在java中设置解密密码
- java.lang.ClassNotFoundException:com.microsoft.jdbc.sqlserver.SQLServerDriver:我加载了正确的驱动程序吗?
- 使用javamail API发送带附件的电子邮件
- 属性’dataSource’是必需的java(Spring)错误
- 如何使用一个DataSource以编程方式更改Spring中的数据库?
- Spring Boot jdbc数据源自动配置在独立的tomcat上失败
- 如何在JBoss中打开的连接池中正确保持数据库连接
- Out容器JNDI数据源
- 如何将JRBeanCollectionDataSource传递给iReport?