我想在controller类下的函数中获取WebApplicationContext的实例和DispatcherServlet的实例。
最佳答案
从 Spring 2.5 开始,您可以使用 @Autowired
注释获取对 WebApplicationContext
的引用:
@Autowired
WebApplicationContext applicationContext;
您还可以通过实现 ApplicationContextAware 来获取 ApplicationContext
的引用界面:
public class YourController implements ApplicationContextAware {
ApplicationContext applicationContext;
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
this.applicationContext = applicationContext;
}
...
}
但我认为没有办法获得对 DispatcherServlet
实例或应用程序中存在的任何 Servlet 实例的引用。早些时候有一种方法可以使用 ServletContext.getServlet() 来获取它。 ,现已弃用。
关于java - 如何在 spring web 应用程序运行时获取 spring-web-mvc 中的 WebApplicationContext 和 DispatcherServlet 的实例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19853861/