Servlet托管Spring进行管理
Servlet托管Spring时,
1、重写servlet中的init()方法,在servlet中使用WebApplicationContext 获取bean对象:
如下:
二、业务servlet的写法:
四、web.xml中业务servlet的配置:<servlet> <servlet-name>UserCheckProxy</servlet-name> <servlet-class>com.XXX.xxxx.web.HttpServletProxy</servlet-class> <init-param> <param-name>targetServlet</param-name> <param-value>userCheckServlet</param-value>(业务servlet配置为spring的bean时的名字) </init-param> </servlet> <servlet-mapping> <servlet-name>UserCheckProxy</servlet-name> <url-pattern>/UserCheck</url-pattern> </servlet-mapping>
1 楼 jsjzhou 2013-01-13 总感觉不是太喜欢这集中方式.
(1)第一种方式手动把每个依赖注入进来. 麻烦
(2)通过proxy, 平白无故的生成了一个代理类.
我个人比较倾向于同注解的方式. 在servlet里面把需要的组件用@AUtowried或@Resource注解标注, 然后在servlet的init方法里面通过类似ApplicationContext.getAutowireCapableBeanFactory().autowireBean(this)方法注入spring中的组件. 好处是通用, 不会生成很多临时类.