相关文章
更多最近更新
更多各们帮忙看一下,为什么spring引用不到jdbcTemplate?
2019-03-25 13:34|来源: 网路
public class DBUtils {
private String jdbcDriver;
private String jdbcUrl;
private String jdbcUser;
private String jdbcPwd;
private String dataBaseProductName;
private String appServerName;
protected JdbcTemplate jdbcTemplate;
protected LobHandler lobHandler;
protected NativeJdbcExtractor nativeJdbcExtractor;
...
public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
this.jdbcTemplate = jdbcTemplate;
}
public void setLobHandler(LobHandler lobHandler) {
this.lobHandler = lobHandler;
}
public void setNativeJdbcExtractor(NativeJdbcExtractor nativeJdbcExtractor) {
this.nativeJdbcExtractor = nativeJdbcExtractor;
}
}
---------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-3.1.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.1.xsd">
<context:property-placeholder location="classpath:jdbc.properties" />
<bean id="c3p0DataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"
destroy-method="close">
<property name="driverClass" value="${jdbc.driverClass}" />
<property name="jdbcUrl" value="${jdbc.url}" />
<property name="user" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
<property name="minPoolSize" value="${pool.minPoolSize}" />
<property name="maxPoolSize" value="${pool.maxPoolSize}" />
<property name="maxIdleTime" value="${pool.maxIdleTime}" />
<property name="acquireIncrement" value="${pool.acquireIncrement}" />
<property name="maxStatements" value="${pool.maxStatements}" />
<property name="initialPoolSize" value="${pool.initialPoolSize}" />
<property name="idleConnectionTestPeriod" value="${pool.idleConnectionTestPeriod}" />
<property name="acquireRetryAttempts" value="${pool.acquireRetryAttempts}" />
<property name="breakAfterAcquireFailure" value="${pool.breakAfterAcquireFailure}" />
<property name="testConnectionOnCheckout" value="${pool.testConnectionOnCheckout}" />
</bean>
<bean id="c3p0JdbcTemplate " class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="c3p0DataSource" />
</bean>
<bean id="oracleLobHandler" lazy-init="true"
class="org.springframework.jdbc.support.lob.OracleLobHandler">
<property name="nativeJdbcExtractor" ref="c3p0NativeJdbcExtractor" />
</bean>
<bean id="c3p0NativeJdbcExtractor" lazy-init="true"
class="org.springframework.jdbc.support.nativejdbc.C3P0NativeJdbcExtractor" />
<bean id="dbUtils" class="test.DBUtils ">
<property name="jdbcTemplate" ref="c3p0JdbcTemplate" />
<property name="lobHandler" ref="oracleLobHandler" />
<property name="nativeJdbcExtractor" ref="c3p0NativeJdbcExtractor" />
</bean>
</beans>
-----------------------------------------------------------------------------------------------------
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:applicationContext-JDBC.xml</param-value>
</context-param>
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:log4j.properties</param-value>
</context-param>
<listener>
<listener-class>org.springframework.web.util.Log4jConfigListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<listener>
<listener-class>org.springframework.web.util.IntrospectorCleanupListener</listener-class>
</listener>
-----------------------------------------------------------------------------------------------------
Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dbHelper' defined in class path resource [applicationContext-JDBC.xml]: Cannot resolve reference to bean 'c3p0JdbcTemplate' while setting bean property 'jdbcTemplate'; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'c3p0JdbcTemplate' is defined
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1360)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1118)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:609)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:918)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:469)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'c3p0JdbcTemplate' is defined
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:553)
at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1095)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:277)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:322)
... 16 more
相关问答
更多-
是不是有一款什么手机软件,可以很自然的拉长腿部?不是美图秀秀,有知道的不?[2022-10-20]
spring -
Spring JdbcTemplate的使用和原理详解[2022-04-08]
JdbcTemplate将我们使用的JDBC的流程封装起来,包括了异常的捕捉、SQL的执行、查询结果的转换等等。 spring大量使用Template Method模式来封装固定流程的动作,XXXTemplate等类别都是基于这种方式的实现。 除了大量使用Template Method来封装一些底层的操作细节,spring也大量使用callback方式类回调相关类别的方法以提供JDBC相关类别的功能,使传统的JDBC的使用者也能清楚了解spring所提供的相关封装类别方法的使用。 你自己 在看看 源代码 就 ... -
spring cloud feign怎么调用不到服务[2023-12-21]
使用Spring Cloud构建实际的微服务架构。 基本概念: 使用Docker进行集成测试 混合持久化 微服务架构 服务发现 API网关 Docker 使用Docker对每一个服务进行构建和部署。使用Docker Compose在一个开发机上进行端到端的集成测试 -
mysql 什么情况用不到联合索引[2023-12-08]
查询时使用联合索引的一个字段,如果这个字段在联合索引中所有字段的第一个,那就会用到索引,否则就无法使用到索引。 例如联合索引 IDX(字段A,字段B,字段C,字段D),当仅使用字段A查询时,索引IDX就会使用到;如果仅使用字段B或字段C或字段D查询 -
春天的英语怎么读?[2022-05-21]
spring -
安卓超级终端用不到linux的命令,例如unzip,但能用mkdir这些简单的命令[2024-03-02]
你所说的LINUX自带的这些命令应该算是busybox里的工具软件。有没有unzip具体还得看busybox有没有带unzip的代码,以及代码是否编译进去了。我本地有个1.16版的busybox源码,是包含unzip代码的。只要menuconfig里选上他就会有unzip命令。 另外android的默认命令还不能算是busybox,因为精简过太多了。当然你如果另外装了busybox的话,应该能和默认一样。但是有没有unzip还是得看你装的版本是否有预编译他。 -
为什么手机里用不到的进程都杀不掉啊?[2022-08-13]
我的也是啊,有些关不掉,有时候杀进程反而进程会增多,奇了怪了 -
我也是个初中生,成绩在年段前五,我从六年级就开始学习编程了,对这个兴趣还是挺大,并不会耽误很多时间,对以后发展很有用,重点是看你对编程的兴趣如何
-
Spring - jdbcTemplate(Spring - jdbcTemplate)[2022-07-03]
将其注入并分享。 不要叫“新”; 它将控制权从Spring bean工厂手中夺走。 Inject it in and share it. Don't call "new"; that takes control out of the hands of the Spring bean factory. -
使用Spring JdbcTemplate(using Spring JdbcTemplate)[2022-11-11]
不,那是整个交易。 使用JdbcTemplate,它将管理资源(Connection,PreparedStatement,ResultSet)。 它是模板方法设计模式的实现 。 Javadoc : 它简化了JDBC的使用,并有助于避免常见错误。 它执行核心JDBC工作流程,使应用程序代码提供SQL并提取结果。 No. That's the whole deal. Use the JdbcTemplate and it will manage the ressources (Connection, Prepa ...