2012-04-03 15 views
1

hibernateの配列テーブルにブール値フィールドを追加することはできますか?私はこれが配列の理論的構造に反していることは知っていますが、おそらくこれを行うことができる休止状態で使用可能な別のコレクション型がありますか?Java/Hibernate - 追加のフィールドを配列テーブルに追加しますか?

すなわち、(説明のために)

idPerson  idAddress indx  currentlyResident 
    2    32  0    1 

where idPerson is key 
indx is index 
idAddress is many-to-many 

ありがとう!

編集:このブール値は

のHibernateのマッピング相互参照テーブルの一部として保存する必要がある非常に標準である、そこに追加のプロパティを取得する必要があります!

<array name="addresses" table="personAddressCrossReference" cascade="all"> 
    <key column="idPerson" /> 
    <index column="indx" /> 
    <many-to-many column="idAddress" class="etc." /> 
</array> 
+0

あなたのhibernate-mappingを表示してください。 –

答えて

2

はいできます。あなたのクラスに属性を追加し、過渡的に設定します。

http://docs.jboss.org/hibernate/annotations/3.5/reference/en/html_single/#entity-mapping-property

はあなたが計算した値を自分で設定する必要があります。 @PostConstruct注釈を使用することができます。

+0

一時的にすることは、インスタンスの存続期間中にのみ有効であるという意味ではありませんか?この値は、相互参照テーブルの一部として保存する必要があります。また、getterとsetterをどこに置くべきかを考えようとすると、それはPersonオブジェクトまたはAddressオブジェクト内にあるでしょうか? – spuriosity

+0

ああ、私はあなたの質問を誤解しました。 –

関連する問題