spring MVC 控制器获取WebApplicationContext

阅读更多

使用spring MVC 时,如何在控制器中获取WebApplicationContext 呢?

WebApplicationContext  是干什么的?

WebApplicationContext 有以下方法:getBean() ,传入bean的id就可以从上下文中获取bean的实例.

使用场景:

一般情况下,我们可以是@Resouce注解,来依赖注入,并不需要手动获取bean的实例再setter.

但是抽象出一个公共的父类Controller,里面使用了泛型T,此时dao的名称我们不知道,我们确定Dao的名称是T 的首字母小写再加上字符串"Dao",所以此时不能使用@Resouce注解,就需要先获取WebApplicationContext,然后通过getBean 方法获取dao实例.

 

获取WebApplicationContext  的方法:

WebApplicationContext webApp=RequestContextUtils.getWebApplicationContext(request	, request.getSession().getServletContext());

 以下摘取自spring MVC官方文档:

 

 

  • spring MVC 控制器获取WebApplicationContext_第1张图片
  • 大小: 38.7 KB
  • 查看图片附件

你可能感兴趣的:(获取cxt,获取ctx)