任何人都可以使用JdbcTemplate
在 Spring 中解决此错误
这是错误 -
log4j:WARN No appenders could be found for logger (org.springframework.core.env.StandardEnvironment).
log4j:WARN Please initialize the log4j system properly.
Exception in thread "main" java.lang.NoSuchMethodError: org.apache.commons.pool.impl.GenericObjectPool.setMinIdle(I)V
at org.apache.commons.dbcp.BasicDataSource.createConnectionPool(BasicDataSource.java:1496)
at org.apache.commons.dbcp.BasicDataSource.createConnectionPool(BasicDataSource.java:1496)
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
at org.springframework.jdbc.datasource.DataSourceUtils.doGetConnection(DataSourceUtils.java:111)
at org.springframework.jdbc.datasource.DataSourceUtils.getConnection(DataSourceUtils.java:77)
at org.springframework.jdbc.core.JdbcTemplate.execute(JdbcTemplate.java:573)
at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:812)
at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:868)
at org.springframework.jdbc.core.JdbcTemplate.update(JdbcTemplate.java:876)
at com.spring.dao.EmployeeDAOImpl.updateSal(EmployeeDAOImpl.java:26)
at com.spring.test.SpringTestCase.main(SpringTestCase.java:20)
答案 0 :(得分:2)
您正在使用Apache Commons DBCP,它对Apache Commons Pool具有传递依赖性。您的DBCP依赖项所需的Commons Pool版本与类路径上的Commons Pool的实际版本不匹配。
或者,您在类路径上有两个版本的Commons Pool,右侧会出现这个版本。
如果您使用Maven构建项目,请运行
mvn dependency:tree
诊断问题的根源。