Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 嵌入式Tomcat7将Spring应用程序上下文传递给servlet_Java_Spring_Tomcat_Servlets - Fatal编程技术网

Java 嵌入式Tomcat7将Spring应用程序上下文传递给servlet

Java 嵌入式Tomcat7将Spring应用程序上下文传递给servlet,java,spring,tomcat,servlets,Java,Spring,Tomcat,Servlets,我想将web接口添加到Java应用程序中,以便可以使用HTTP操作它的状态 我已经为启动嵌入式Tomcat的某个类向应用程序上下文添加了一个Springbean。这个类当然可以访问创建它的上下文。但我希望以某种方式将此上下文存储在Tomcat类(org.apache.catalina.startup.Tomcat)中,以便稍后可以在servlet中检索,这样我就可以执行以下操作: public SomeClass extends extends HttpServlet {

我想将web接口添加到Java应用程序中,以便可以使用HTTP操作它的状态

我已经为启动嵌入式Tomcat的某个类向应用程序上下文添加了一个Springbean。这个类当然可以访问创建它的上下文。但我希望以某种方式将此上下文存储在Tomcat类(org.apache.catalina.startup.Tomcat)中,以便稍后可以在servlet中检索,这样我就可以执行以下操作:

    public SomeClass extends extends HttpServlet {    
            @Override
            protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
                ApplicationContext appContext = getContextStoredEarlierInTomcatClass();
                SomeBeanFromContext sbfc = appContext.getBean("sbfc", ApplicationContext.class);
                sbfc.setSomeProperty(newValue);
            }    
    }
你知道我怎样才能做到吗


谢谢

包含servlet的类不需要
ApplicationContext
来获取对字符串bean的引用。这是使用依赖项注入完成的

@Controller
@RequestMapping("/mypage")
public class SomeClass {

   @Autowired
   private SomeBeanFromContext sbfc;

   @RequestMapping(value = "/individualRequest", method = RequestMethod.GET)
   public String doIndividualRequest(HttpServletRequest request) {
      sbfc.setSomeProperty(newValue);
      ...
   }
}
提供使用
@controller
注释类将bean注入目标web控制器类的完整方法