跨多个servlet共享Spring bean



我对spring有点陌生,我的要求是让用户通过多个servlet、登录

例如:所有类型的用户都使用Dispatcher Servlet,但Admin使用不同的Servlet来确保额外的安全性,我将如何将Dispatcher Servlet Spring上下文bean中定义的bean共享给同一web应用程序上下文中的其他Servlet。

此外,我还希望有一个用于访问Ajax请求的servlet,

所有这些servlet应该共享相同的HttpSession和bean,查看示例配置代码会更有帮助。

您有三种方法:

1-使用ContextLoaderListener创建父上下文,您的serlvets将成为该上下文的子上下文。,并在父上下文中定义bean。

检查此链接

2-另一种方法是手动加载另一个servlet的xml文件,如下所示:

ApplicationContext context =
new ClassPathXmlApplicationContext("classpath:application-context.xml");
Person person = (Person)context.getBean("person");

3,您还可以使用以下方法将servlet bean导入其他servlet:

<import resource="classpath:application-context.xml"/>

最新更新