java - 如何在 spring web 应用程序运行时获取 spring-web-mvc 中的 WebApplicationContext 和 DispatcherServlet 的实例

标签 java spring-mvc

我想在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/

相关文章:

java - 按下按钮后如何使用自己的 ActionListener 类将文本附加到 JTextArea

spring - 如何将 spring 属性迭代为 jsp 列表

java - 为可信空间定制 Spring Security

java - spring mvc模块不更新记录

java - 陷入使用 spring 上传和下载图像的困境

java - 错误 "import static com.sun.corba (...)"

java - facebook-java-api是否支持应用程序请求

java - Spring 应用范围

java - 如何在 Java 或 C# 等静态类型语言中避免参数顺序依赖

java - Python 套接字从 Java PrintWriter 套接字接收不完整的消息