永发信息网

spring servlet中不可以注入吗

答案:2  悬赏:40  手机版
解决时间 2021-01-24 04:48
  • 提问者网友:刺鸟
  • 2021-01-24 01:31
spring servlet中不可以注入吗
最佳答案
  • 五星知识达人网友:想偏头吻你
  • 2021-01-24 02:58
原因如下:
filter和servlet不受spring管理,所以不能依赖注入spring管理的bean,在servlet里的init方法加入如下代码:
private XxxxService xxxxService;
WebApplicationContext wac = WebApplicationContextUtils.getRequiredWebApplicationContext(config.getServletContext());
xxxxService= (XxxxService) wac.getBean("xxxxService");
即可获得spring管理的bean.
filter代码如下:
wac = WebApplicationContextUtils.getRequiredWebApplicationContext(config.getServletContext());
xxxxService= (XxxxService) wac.getBean("xxxxService");
全部回答
  • 1楼网友:蕴藏春秋
  • 2021-01-24 03:54
在applicationcontext.xml中定义数据层访问bean: <bean id="userdao" class="test.userdaoimpl"></bean> public class myservlet extends httpservlet { private static final long serialversionuid = 1l; private userdao userdao; .... } 注入方法::在servlet的init方法中增加以下代码: public void init(servletconfig config) throws servletexception { springbeanautowiringsupport.processinjectionbasedonservletcontext(this, config.getservletcontext()); } 并且在变量userdao上一行增加@autowired: @autowired private userdao userdao; ~如果你认可我的回答,请及时点击【采纳为满意回答】按钮 ~~手机提问的朋友在客户端右上角评价点【满意】即可。 ~你的采纳是我前进的动力 ~~o(∩_∩)o,记得好评和采纳,互相帮助,谢谢。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯