三叶草 发表于 2021-10-20 18:25:51

JSP 开发之servlet中调用注入spring管理的dao

JSP 开发之servlet中调用注入spring管理的dao
我们用spring的依赖注入可以将dao注入到action中,然后我们就可以直接调用了dao中的方法了,可是servlet不是由spring容器管理,所以在servlet中不能注入dao类,也就不能用dao中的方法。
下面是实现方法:

private UserDao userDao;
   
    public void init() throws ServletException {
    super.init();
   
    ServletContext servletContext = this.getServletContext();
   
    WebApplicationContext ctx = WebApplicationContextUtils.getWebApplicationContext(servletContext);
   
    userDao = (UserDao)ctx.getBean("userDao");
} 在servlet中加入私有变量UserDao,然后在servlet的init()方法中初始化一下即可用。

public UserDao getUserDao() {
    return userDao;
}

public void setUserDao(UserDao userDao) {
    this.userDao = userDao;
}
还要加getset方法,(去掉这个的情况没有测试)
以后就可以随意在servlet中调用dao了,耶!
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

https://www.uoften.com/program/jsp/20180413/48133.html
页: [1]
查看完整版本: JSP 开发之servlet中调用注入spring管理的dao