spring使用JdbcTemplate问题记录

报错

之前有遇到使用spring的JdbcTemplate对数据库进行操作,但是部署到服务器上的时候就报错了,如下:

weblogic.application.ModuleException: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.springframework.jdbc.core.JdbcTemplate] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}:org.springframework.beans.factory.NoSuchBeanDefinitionException:No qualifying bean of type [org.springframework.jdbc.core.JdbcTemplate] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency. Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}

经过检查发现是JdbcTemplate没有注入。知道原因就很简单了

解决

JdbcTemplate实例化bean的方式有很多种,下面只写我使用的方式:

java代码

public class JDBCTemplateQueryServiceImpl implements JDBCTemplateQueryService {

    private JdbcTemplate jdbcTemplate;

    public JdbcTemplate getJdbcTemplate() {
        return jdbcTemplate;
    }

    public void setJdbcTemplate(JdbcTemplate jdbcTemplate) {
        this.jdbcTemplate = jdbcTemplate;
    }

    ...
}

spring的xml配置

    <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
        <property name = "dataSource" ref="dataSource"/>
    </bean>
    <bean id="JDBCTemplateQueryService" class="com.xxx.xxx.JDBCTemplateQueryServiceImpl">
        <property name="jdbcTemplate" ref="jdbcTemplate"/>
    </bean>
posted @ 2020-12-11 11:41  山上的人  阅读(654)  评论(0编辑  收藏  举报