6

我想在控制器类下的函数中获取 WebApplicationContext 的实例和 DispatcherServlet 实例。

4

1 回答 1

2

从 Spring 2.5 开始,您可以获得WebApplicationContext使用@Autowired注解的参考:

@Autowired
WebApplicationContext applicationContext;

您还可以ApplicationContext通过实现ApplicationContextAware接口来获取参考:

public class YourController implements ApplicationContextAware {
ApplicationContext applicationContext;
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
this.applicationContext = applicationContext;
}
...
}

但我认为没有办法获得对DispatcherServlet实例或应用程序中存在的任何 Servlet 实例的引用。早些时候有一种使用ServletContext.getServlet()获取它的方法,现在已弃用。

于 2013-11-08T08:25:31.550 回答