为了账号安全,请及时绑定邮箱和手机立即绑定

空指针错误

Action类中并没有创建Service的实例,直接用Service调用其 sava方法会报空指针错误的,同样Service中也没用创建Dao实例

正在回答

2 回答

先了解依赖注入:依赖注入是Spring的思想,在使用Spring进行开发时,可以将对象交给spring进行管理,在初始化时spring创建一批对象,当你需要用的时候只要从spring的容器中获取对象,而不用自己去new,当然在对象创建的时候可以注入另一个对象。比如A,B两个对象都由spring管理,A中持有对B的引用,那么spring在生成A对象的时候就已经吧B对象的一个实例给到A了,当你在A中用到B的时候直接使用就可以了。

如果还要实例的话就不需要用spring了,spring就是做管理这些对象的实例工作的,applicationContext.xml里配置的bean可以看成就是已经实例了,且默认是单例的。例如:Service调Dao的方法,在applicationContext.xml里配置

 <bean id="Dao" class="com.dao.Dao">

 </bean>

 <bean id="Service" class="com.service.Service">

        <property name="Dao" ref="Dao"></property>

 </bean>

实际已经完成了实例和注入,第一个Service的bean里property的name即在Service.java里写的Dao的对象名,提供set方法,它会依照name属性去匹配对象名给它注入。ref属性就是spring管理的bean,即第二个实例的id为Dao的对象。全意就是:实例Dao,实例Service,给Servie里使用到的Dao注入已经实例管理的Dao对象。


1 回复 有任何疑惑可以回复我~
#1

weibo_小宝宝囍_0 提问者

Thanks
2016-12-31 回复 有任何疑惑可以回复我~
#2

weibo_小宝宝囍_0 提问者

大神,帮个忙。我的jar包放在lib下,已经add to buildPath,可是tomcat启动就是找不到spring监听器的类,报的错是classNotFound: org.springframework.web.context.ContextLoaderListener extends org.springframework.web.context.ContextLoader,在web.xml中ctrl+单击是可以去到那个类的,网上说可能jar包不兼容,我已经换过spring-web.jar还是不行
2016-12-31 回复 有任何疑惑可以回复我~
#3

qq_那个_2

也就是说这个xml会帮你自动new出实例是吗? 可是有了这个xml文件,还是出现了题主所说的问题,为什么,求解
2017-04-13 回复 有任何疑惑可以回复我~

大神,帮我看一下怎么老是找不到文件。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

空指针错误

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信