2

POJO から Spring appcontext.xml に値をロードする方法はありますか?

たとえば、次のような POJO があります。

public class Settings {
    private String appSetting;
    getMethod;
    setMethod;

public class Main {
    @Autowired
    private Settings setting

    @Autowired
    private SomethingElse somethingElse
}

そして、最終的な目標は、somethingElse設定からの値で自動配線することです。Springではメソッドを呼び出せないと思うので、これを行う方法はありますか?

例 appContext

<bean id="settings" class="com.myCom.settings" />

<bean id="somethingElse" class="com.myCom.somethingElse" />
    <constructor-arg name="something" value="VALUE FROM SETTINGS.GET" />
</bean>
4

4 に答える 4

1
@Component
public class Settings {

SpringマニュアルからClasspathスキャンと管理対象コンポーネントを確認してください。

更新SpEL も使用できます。たとえば、名前やタイプで配線することもできapplicationContext.xmlます。@Autowired

于 2011-12-08T21:55:51.407 に答える
0

私はこれを試していませんが、PropertyPathFactoryBeanが役に立ちます。pojoに@Componentアノテーションを付け、「settings」という名前を使用してアクセスするか、実行後に構成ファイルでBeanを定義することができます。

この後、PropertyPathFactoryBeanを介してプロパティを「somethingElse」にプッシュします。ここに説明があります。これがお役に立てば幸いです。

于 2011-12-09T06:46:50.367 に答える
0
<bean id="settings" class="com.myCom.settings" />

<bean id="somethingElse" class="com.myCom.somethingElse" />
    <constructor-arg name="something" value="#{settings.something}" />
</bean>
于 2011-12-09T07:26:52.953 に答える