您的位置:首页 > 编程语言 > Java开发

servlet中调用注入spring管理的dao

2015-04-01 10:46 204 查看
我们用spring的依赖注入可以将dao注入到action中,然后我们就可以直接调用了dao中的方法了,可是servlet不是由spring容器管理,所以在servlet中不能注入dao类,也就不能用dao中的方法。

下面是实现方法:

<span style="white-space:pre"> </span>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()方法中初始化一下即可用。

<span style="white-space:pre"> </span>public UserDao getUserDao() {
return userDao;
}

public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}

还要加get  set方法,(去掉这个的情况没有测试)

以后就可以随意在servlet中调用dao了,耶!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: