Spring XMLには複合プロパティ名がありますが、複合プロパティ値が見つかりません。
Person
次のプロトタイプのゲッターがあるとします。
class Person {
Person getFather();
void setFather(Person value);
String getAge();
void setAge(String value);
...
}
Company
プロトタイプは次のようなものです。
class Company {
Person getOwner();
void setOwner(Person value);
...
}
これらを次のようなものと接続できますか
<bean id="Bob" class="Person"/>
<bean id="Barnyard" class="Company">
<property name="owner" ref="Bob.father"/>
</bean>
Bob.father
上記は「 IDを持つBeanがない」とは機能しません。
以下も動作しません
<bean id="Barnyard" class="Company">
<property name="owner" value="Bob.father"/>
</bean>
に変換できないと言っていString
ますPerson
。
達成する方法は?
アップデート
会社の所有者の年齢を設定したいとします。どうやら私はこれを書くべきです:
<bean id="Barnyard" class="Company">
<property name="owner" value="#{Bob.father}"/>
<property name="owner.age" value="38"/>
</bean>
LEFTでプロパティのプロパティを使用できるが、RIGHTで同じことを実行できない場合、これは悪い設計ではありませんか?