gpt4 book ai didi

spring - 如何在不同的 Spring 上下文之间共享 Spring bean?

转载 作者:行者123 更新时间:2023-12-04 23:06:47 28 4
gpt4 key购买 nike

我们有一个使用 Spring BlazeDS 集成的应用程序。到目前为止,我们一直在使用 Spring 和 Flex,它运行良好。我们现在还需要添加一些 Spring MVC Controller 。 Spring BlazeDS 文档指出,这样做的方法是在 中声明两个单独的上下文。 web.xml , 如下:

<servlet>
<servlet-name>flex</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>flex</servlet-name>
<url-pattern>/messagebroker/*</url-pattern>
</servlet-mapping>

<servlet>
<servlet-name>spring-mvc</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>

<servlet-mapping>
<servlet-name>spring-mvc</servlet-name>
<url-pattern>/spring/*</url-pattern>
</servlet-mapping>

这是我的问题:在两种情况下都需要使用 Spring bean - spring-mvc 一和 柔性 一。如何做到这一点 - 如何在一个上下文中声明一个 bean(在 xml 中或通过组件扫描)并允许它与在另一个上下文中声明的 bean 共享?
谢谢 !

最佳答案

使用 ContextLoaderListener 创建父上下文. DispatcherServlet上下文将自动成为该上下文的子项。

在父上下文中创建共享 bean 并在子上下文中的 bean 中引用它们。

如果您正在使用 <component-scan>确保您不会意外地将类扫描到多个上下文中。看我的回答 here .

关于spring - 如何在不同的 Spring 上下文之间共享 Spring bean?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10339174/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com