• Spring注入SessionFactory的空指针异常


    自己的错误在于,new的Dao实例,进行调用,以至于出现Dao中注入的Sessionfactory空指针。

    在hibernate+spring配置过程中,应注意几点:

    1、不能直接new一个DAO的实例,而应该通过spring的配置文件自动初始化session bean,然后再通过spring得到该DAO的引用,否则在调用getHibernateTemplate()时,会获得一个null的空指针异常。

    2、在DAO的sql语句中,from后面的应该是POJO bean的类名,而不是数据库的表名。

    也就是说,在引入spring的ioc时,所有的bean都在里面统一管理配置。在action里获得的那个dao并不是从spring的bean管理中(applicationContext.xml)获得的,因此也就没有获得象datasource等资源,改正办法,在action里注入dao的引用就可以了。

    Spring不是执行时通过web.xml进行配置的,是在启动服务时就配好了的,所以在执行时只需调用注入进来的,如果这时候再new一个对象,是不会出错,只不过这个对象不是Spring注入进来的对象,所以在获得SessionFactory时抛出空指针。

  • 相关阅读:
    微服务
    JNDI Tomcat
    JNDI
    依赖倒置原则
    mac下为gdb创建证书赋权其调试其它应用
    sed相关
    关于autoconf
    mac相关
    about gnu bash shell
    关于gcc
  • 原文地址:https://www.cnblogs.com/killer-xc/p/8444668.html
Copyright © 2020-2023  润新知