1

以下のようなエントリを持つSpring構成ファイルが1つあります...

<bean id="beanId" class="a.b.c.d.MyBean">
        <property name="firstProperty" value="report_{date}.xls"/>
</bean>

Java コードのどこかで、この Bean をフェッチしてから、そのプロパティ「firstProperty」をフェッチしています。

プロパティ「firstProperty」の値を取得すると、report_.xls、つまりreport_20130307.xlsが取得されます。

バンドル、xml を含むすべてのコードを検索しましたが、今日のタイムスタンプで {date} を設定している場所が明確ではありません。

どこでこれを行うことができるか手がかりはありますか?

ありがとう

ジャイ

4

3 に答える 3

0

その非常に単純な人たち...私たちが知っているように、セッターは各プロパティに対して呼び出されます。私の場合も同じです。bean では、変数「firstProperty」+今日のタイムスタンプを以下のように設定しています。

public void setfirstProperty(String firstProperty) {
    this.firstProperty = firstProperty + <methodToReplaceDateStringWithTimeStamp>;
}

ありがとう

ジャイ

于 2013-03-07T13:03:22.140 に答える
0

ほとんどの場合、プロパティへの値は、式言語を使用してプロパティ ファイルから設定されます。お気に入り

<bean id="dataSource" class="a.b.c.d.DataSource">
    <property name="databaseUrl" value="{db.url}"/>
</bean>

または、プロパティが別の Bean への参照である場合、たとえば、オブジェクト B はオブジェクト A のメンバー変数です。

<bean id="refA" class="a.b.c.d.A">
    <property name="b" ref="refB"/>
</bean>

<bean id="refB" class="a.b.c.d.B">
</bean>   
于 2013-03-07T12:08:01.887 に答える
0

これは、プロパティ プレースホルダー メカニズムです。

http://static.springsource.org/spring/docs/3.2.x/spring-framework-reference/html/xsd-config.html#xsd-config-body-schemas-context-pphcで詳細をお読みください。

于 2013-03-07T12:07:23.807 に答える