spring mybaits项目中,在一个普通的类中继承ApplicationListener,为什么项目启动时会报空指针异常?

「已注销」 2016-07-09 08:50:00
service实现类的代码如下所示:
@Service
public class CodeServiceImpl implements BaseInterface {
private BaseDao dao;

@Override
public Code getCode() {
return (Code) dao.selectOne("code.selectList");
}

public void setDao(BaseDao dao) {
this.dao = dao;
}
}
类中的代码第一幅图所示:
其中baseDao是封装的mybaits操作数据库的方法
applicationContext.xml中关于mybaits的整合如下所示:
<!-- spring与mybatis整合配置,扫描所有dao -->
<bean class="org.mybatis.spring.mapper.MapperScannerConfigurer" p:basePackage="com.liwc.liwcshop.web.dao"
p:sqlSessionFactoryBeanName="sqlSessionFactory"/>
报错如第二幅图所示:
...全文
296 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2016-07-13
  • 打赏
  • 举报
回复
引用 6 楼 qnmdcsdn 的回复:
@Service public class CodeServiceImpl implements BaseInterface { @Autowired( private BaseDao dao; 加在这里,不是加在dao接口上
还是不行,但是加上static就可以,不知道是为什么。。还有就是在SystemMBean中怎么使用session
  • 打赏
  • 举报
回复
@Service public class CodeServiceImpl implements BaseInterface { @Autowired( private BaseDao dao; 加在这里,不是加在dao接口上
「已注销」 2016-07-11
  • 打赏
  • 举报
回复
引用 1 楼 qnmdcsdn 的回复:
dao上边加注解注入
不行,我试过了
  • 打赏
  • 举报
回复
dao上边加注解注入
「已注销」 2016-07-11
  • 打赏
  • 举报
回复
引用 4 楼 feiwanglantian 的回复:
[quote=引用 3 楼 qnmdcsdn 的回复:] [quote=引用 2 楼 feiwanglantian 的回复:] [quote=引用 1 楼 qnmdcsdn 的回复:] dao上边加注解注入
不行,我试过了[/quote][/quote]加上那个注解,好像报错了[/quote] 报如下的错误: Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'codeServiceImpl': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.liwc.liwcshop.web.util.dao.BaseDao com.liwc.liwcshop.web.util.service.impl.CodeServiceImpl.dao; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.liwc.liwcshop.web.util.dao.BaseDao] 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)} at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:292) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1185) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537) at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475) at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:304) at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228) at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300) at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195) at org.springframework.beans.factory.support.DefaultListableBeanFactory.findAutowireCandidates(DefaultListableBeanFactory.java:1014) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:957) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:855) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:480) ... 58 more Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private com.liwc.liwcshop.web.util.dao.BaseDao com.liwc.liwcshop.web.util.service.impl.CodeServiceImpl.dao; nested exception is org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.liwc.liwcshop.web.util.dao.BaseDao] 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)} at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:508) at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:289) ... 69 more Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type [com.liwc.liwcshop.web.util.dao.BaseDao] 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)} at org.springframework.beans.factory.support.DefaultListableBeanFactory.raiseNoSuchBeanDefinitionException(DefaultListableBeanFactory.java:1100) at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:960) at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:855) at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:480) ... 71 more
「已注销」 2016-07-11
  • 打赏
  • 举报
回复
引用 3 楼 qnmdcsdn 的回复:
[quote=引用 2 楼 feiwanglantian 的回复:] [quote=引用 1 楼 qnmdcsdn 的回复:] dao上边加注解注入
不行,我试过了[/quote][/quote]加上那个注解,好像报错了
  • 打赏
  • 举报
回复
引用 2 楼 feiwanglantian 的回复:
[quote=引用 1 楼 qnmdcsdn 的回复:] dao上边加注解注入
不行,我试过了[/quote]

67,512

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧