spring dataSource配置。带注释

时间:2013-06-23 11:12:34

标签: spring jdbc annotations datasource

我的道歉实施;

\\here are imports...
@Repository
public class CompanyDaoImp extends JdbcDaoSupport implements CompanyDao {


private static final String INSERTCOMPANY = "INSERT INTO b_company"
        + "(NAME)VALUES(?)";

这是我的豆子;

<?xml version=".........

 <!-- TODO add the component-scan and annotation-config elements -->

 <context:annotation-config/>
 <context:component-scan base-package="com.some.company"/>



 <bean id="companyAppDataSource"   
  class="org.springframework.jdbc.datasource.DriverManagerDataSource">
 <property name="driverClassName" value="com.mysql.jdbc.Driver"/>
 <property name="url" value="jdbc:mysql://localhost:3306/companyapp"/>
 <property name="username" value="root"/>
 <property name="password" value="root"/>
 </bean>
 </beans>

我无法理解为什么我继续接受例外; .......调用init方法失败;嵌套异常是java.lang.IllegalArgumentException:'dataSource'或'jdbcTemplate'是必需的.........

1 个答案:

答案 0 :(得分:0)

JdbcDaoSupport没有任何注释可以自动注入DataSource。您必须覆盖setDataSource方法,如下所示:

<bean name="companyDaoImp" class="...CompanyDaoImp">
    <property name="dataSource" ref="companyAppDataSource" />
</bean>

Spring无法自动注入DataSource,因为你可能有多个数据源,在这种情况下,有必要告诉Spring你需要哪一个。

相关问题