会话范围的bean和不可序列化bean的重新接线

时间:2019-11-15 08:28:36

标签: java spring spring-boot

我们有一个JSF应用程序,其中包含几个会话范围的bean。一个例子是:

@Component
@SessionScope
public class SomeSessionBean implements Serializable {

    @Autowired
    private transient SomeService someService; // singleton bean

    // ...
}

SomeService不可序列化,因此该属性被标记为transient

SomeService反序列化并重新加载到(Tomcat)SessionManager中的情况下,Spring似乎不会自动重新连接SomeSessionBean。但是,有this video presentation from SpringOne表示在Spring 3.x中引入了针对这种情况的机制。

我完全知道使用Spring的ObjectFactoryObjectProvider可以解决此问题。但是,对于开发人员来说,使用特殊的接口声明属性或构造函数参数并不透明,因此(反序列化)效果很好。

所以我的问题是:Spring中是否存在一种机制,当对会话范围的bean进行反序列化时,该机制可以重新连接不可序列化的bean?

0 个答案:

没有答案