Spring 通过注解来注入XML配置的bean 发现未成功注入 5
<beanid="xxxSqlMapClient"class="org.mybatis.spring.SqlSessionFactoryBean"><propertyna...
<bean id="xxxSqlMapClient" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="configLocation" value="classpath:sqlmap-config-xxx.xml" />
<property name="dataSource" ref="xxxDataSource" />
</bean>
<bean id="xxxSqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" ref="xxxSqlMapClient"></constructor-arg>
</bean>
如上所示,xxxSqlSession 是XML中配置好的bean。
然后我在类中通过以下方式注入该bean
public class BasexxxDao {
@Autowired
@Qualifier("xxxSqlSession")
protected SqlSession sqlSession;
}
结果发现
@Repository
public class MessageHistoryDaoImpl extends BasexxxDao implements MessageHistoryMapper{
@Override
public List<RabbitMessage> queryRabbitMessage(RequstParam requstParam) {
return sqlSession.selectList("com.xxx.dao.MessageHistoryMapper.queryRabbitMessage", requstParam);
}
}
这个方法在调用的时候出现以下异常
Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: protected org.apache.ibatis.session.SqlSession com.xxx.base.BaseXitsDao.sqlSession; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.apache.ibatis.session.SqlSession] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency.
请大家帮忙看看,如何通过注解装配的方式去引用XML中配置的bean.这里注入失败了,是什么原因?非常感谢!!! 展开
<property name="configLocation" value="classpath:sqlmap-config-xxx.xml" />
<property name="dataSource" ref="xxxDataSource" />
</bean>
<bean id="xxxSqlSession" class="org.mybatis.spring.SqlSessionTemplate">
<constructor-arg index="0" ref="xxxSqlMapClient"></constructor-arg>
</bean>
如上所示,xxxSqlSession 是XML中配置好的bean。
然后我在类中通过以下方式注入该bean
public class BasexxxDao {
@Autowired
@Qualifier("xxxSqlSession")
protected SqlSession sqlSession;
}
结果发现
@Repository
public class MessageHistoryDaoImpl extends BasexxxDao implements MessageHistoryMapper{
@Override
public List<RabbitMessage> queryRabbitMessage(RequstParam requstParam) {
return sqlSession.selectList("com.xxx.dao.MessageHistoryMapper.queryRabbitMessage", requstParam);
}
}
这个方法在调用的时候出现以下异常
Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: protected org.apache.ibatis.session.SqlSession com.xxx.base.BaseXitsDao.sqlSession; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [org.apache.ibatis.session.SqlSession] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency.
请大家帮忙看看,如何通过注解装配的方式去引用XML中配置的bean.这里注入失败了,是什么原因?非常感谢!!! 展开
2个回答
展开全部
No qualifying bean of type [org.apache.ibatis.session.SqlSession] found for dependency: 从这里可以看出来[org.apache.ibatis.session.SqlSession]这个类没有找到,这个类是在哪个包里面?工程jar包引用了吗?如果没引用找出来分类代入进去就可以了。
拓展:
1、数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。
2、在信息化社会,充分有效地管理和利用各类信息资源,是进行科学研究和决策管理的前提条件。数据库技术是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心部分,是进行科学研究和决策管理的重要技术手段。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询