空指针错误

来源:4-3 配置Action,Service,Dao的类-Struts2整合Spring

weibo_小宝宝囍_0

2016-12-30 13:53

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

写回答 关注

2回答

  • qq_回忆似沙_0
    2016-12-31 14:29:09
    已采纳

    先了解依赖注入:依赖注入是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对象。


    qq_那个_...

    也就是说这个xml会帮你自动new出实例是吗? 可是有了这个xml文件,还是出现了题主所说的问题,为什么,求解

    2017-04-13 19:06:45

    共 3 条回复 >

  • qq_一世的沉默_0
    2017-03-11 22:16:51

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

基于SSH实现员工管理系统之框架整合篇

本视频教程主要介绍环境搭建和SSH框架整合,逐层深入理解学习

49832 学习 · 344 问题

查看课程

相似问题