【发布时间】:2022-02-01 11:09:50
【问题描述】:
我想使用 oauth2 服务器访问我的网络应用程序。
身份验证顺利通过,我被重定向到我的网络应用程序。
但问题是当我尝试从我的数据库中加载数据时,我得到了这个
例外:
janv. 31, 2017 1:16:07 PM org.apache.tomcat.jdbc.pool.PooledConnection connectUsingDriver
AVERTISSEMENT: Not loading a JDBC driver as driverClassName property is null.
janv. 31, 2017 1:16:07 PM org.apache.tomcat.jdbc.pool.ConnectionPool init
GRAVE: Unable to create initial connections of pool.
java.sql.SQLException: The url cannot be null
谁能帮帮我。
编辑:
我有一个单独的配置模块,用于设置我的数据库连接。我将此模块添加为我的网络应用程序中的依赖项。
我的 application.properties 文件
# DataSource configuration
datasource.host=localhost
datasource.name=my-db
datasource.port=5432
datasource.username=my-user
datasource.password=my-password
datasource.url=jdbc:postgresql://${datasource.host}:${datasource.port}/${datasource.name}
datasource.driver.class.name=org.postgresql.Driver
我的配置类(我正在使用类似 ORM 的 myBatis)
@Configuration
@MapperScan(basePackages = {"com.package.mapper"})
@ComponentScan(basePackages = {"com.package.repository"})
public class MyBatisConfig {
@Value("${datasource.driver.class.name}")
private String dbDriverClassName;
@Value("${datasource.url}")
private String dbUrl;
@Value("${datasource.username}")
private String dbUsername;
@Value("${datasource.password}")
private String dbPassword;
@Bean
public DataSource getDataSource() {
return DataSourceBuilder
.create()
.url(dbUrl)
.driverClassName(dbDriverClassName)
.username(dbUsername)
.password(dbPassword)
.build();
}
@Bean
public SqlSessionFactory sqlSessionFactory() throws Exception {
SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
sessionFactory.setConfigLocation(new ClassPathResource("META-INF/spring/mybatis-config.xml"));
sessionFactory.setDataSource(getDataSource());
return sessionFactory.getObject();
}
@Bean
public DataSourceTransactionManager transactionManager() {
return new DataSourceTransactionManager(getDataSource());
}
}
【问题讨论】:
-
你的连接池的配置是什么(包括连接URL字符串)?
-
能否请您发布您正在初始化数据源/连接的java代码?
-
@JayaramPradhan 是的,我编辑了我的帖子
-
@TheGuide:如果你要调试,你看到
dbUrl的值是多少等等。可能@Value 注释没有注入属性文件中的值。 -
@JayaramPradhan,你是对的,dbUrl 的值为 null
标签: java spring connection-pooling mybatis oauth2