【问题标题】:Disposal factory pattern in Spring?Spring中的处置工厂模式?
【发布时间】:2012-02-06 17:55:57
【问题描述】:

我可以使用工厂 bean 在 Spring 中创建另一个 bean。是否也可以通过将 bean 交给另一个 bean 来处置(销毁)它?

例如,我有 Database bean,它作为 Corpus bean 的工厂:

<bean id="Corpus" name="Corpus" factory-bean="Database"
    factory-method="loadCorpus">
</bean>

loadCorpus时,数据库从服务器读取数据并将其作为语料库对象返回。

现在我想在语料库中进行一些更改,并在程序生命周期结束时将其放回数据库。

在“处置”语料库 bean 的过程中通过将其返回数据库进行处置是合乎逻辑的。

但我没有看到任何配置选项。虽然创建可以使用 bean 和方法进行设置,但销毁只能使用方法进行。

那如何达到我的目标呢?

【问题讨论】:

    标签: spring design-patterns javabeans destroy


    【解决方案1】:

    让您的数据库 bean 保留对其创建的语料库实例的引用,并将其设为 disposable。这样,当容器停止时,会调用 Database bean 的 destroy 方法,它可以持久化对它创建的 Corpus 实例所做的所有更改。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-10
      • 1970-01-01
      • 2021-02-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多