Springboot JPA可以工作,配置如下
spring.datasource.url=jdbc:oracle:thin:@ldap://severname:1522/dbname,cn=OracleContext,dc=uk,dc=csfb,dc=com
spring.datasource.username=Someusername
spring.datasource.password=Somepassword
spring.datasource.driver-class-name=oracle.jdbc.driver.OracleDriver
但当我把config定义为
db.url=jdbc:oracle:thin:@ldap://severname:1522/dbname,cn=OracleContext,dc=uk,dc=csfb,dc=com
db.username=Someusername
db.password=Somepassword
db.driver-class-name=oracle.jdbc.driver.OracleDriver
和拦截器代码为
@ConfigurationProperties
@Bean
public DataSource dataSource() {
HikariConfig config = new HikariConfig();
config.setJdbcUrl(dbUrl);
config.setUsername(dbUserName);
config.setPassword(jasyptCipher.decrypt(dbPassword, encryptorPassword));
config.setDriverClassName(dbDriverClassName);
return new HikariDataSource(config);
}
JPA在内部使用hikari池,通过上面的代码,hikaripool中的第1个DB连接被成功连接,但是其他的DB连接失败,因为我提供的用户名=someusername被systemlogin id覆盖了。