拋出異常
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'adminService': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private pers.zww.grad.dao.IAdminDao pers.zww.grad.service.impl.AdminServiceImpl.adminDao; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [pers.zww.grad.dao.IAdminDao] 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.annotation.Qualifier(value=adminDao)}
此為自動生成的Mapper,我加了注解@Repository
package pers.zww.grad.dao;
import org.springframework.stereotype.Repository;
import pers.zww.grad.vo.Admin;
@Repository("adminDao")
public interface IAdminDao {
int deleteByPrimaryKey(String id);
int insert(Admin record);
int insertSelective(Admin record);
Admin selectByPrimaryKey(String id);
int updateByPrimaryKeySelective(Admin record);
int updateByPrimaryKey(Admin record);
Integer getCountByName(String name);
Integer getCountByNameAndPass(String name,String password);
}
這是Service裡面注入
package pers.zww.grad.service.impl;
、、、
@Service("adminService")
public class AdminServiceImpl implements IAdminService {
@Autowired
@Qualifier("adminDao")
private IAdminDao adminDao;
@Override
public int deleteByPrimaryKey(String id) {
// TODO Auto-generated method stub
return 0;
}
配置文件都已掃描過了,而且相關mybatis的如下:
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!-- 自動掃描mapping.xml文件 -->
<property name="mapperLocations" value="classpath:pers/zww/grad/mapping/*.xml"></property>
</bean>
<!-- DAO接口所在包名,Spring會自動查找其下的類 -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer">
<property name="basePackage" value="pers.zww.grad.dao" />
<property name="sqlSessionFactoryBeanName" value="sqlSessionFactory"></property>
</bean>
自動掃描的包有沒有加進去
<!-- 對web包中的所有類進行掃描,以完成Bean創建和自動依賴注入的功能 -->