2016-04-29 12 views
0

私はエンティティを作成するためにjavax.persistence.Entityから@Entityを使用しています。この特定のケースでは一時的な属性(プライベートブールが割り当てられます)を作成しなければならず、orgからPagingAndSortingRepositoryを使用しています。データベースエンティティを管理するためのインタフェースを作成するためのspringframework.data.repository一時的な属性に自動的に値を割り当てる

List(OneToMany)属性が空の場合、この値を割り当てる必要があります。したがって、私はプログラム的にif節を使用しています。問題はどこでもif節を書く必要があります。その変数を何らかの形で自動的に割り当てることが可能かどうかを知ることができます。

ありがとうございます。

答えて

1

あなたがデータベースに保存される前に、このフラグの値を設定する必要がある場合は、私が使用エンティティリスナー@PrePersistをお勧めします、basicalluあなたがオブジェクトを永続化する前にチェックできる方法では、特定のロジックを実行する可能性を与えるだろう配列が空の場合は値をfalseに設定します。

エンティティが現在の 永続コンテキストにロードされているか、エンティティがリフレッシュされた後に実行

@PostLoad: のような他のイベントがあります。

@PostLoad 
public void setAssigned() { 
    //Your logic for set to true or false the transient variable. 
} 

私は、これは、プロバイダによって管理することで一つだけの場所でのロジックを行うための一つの選択肢だと思います。それについてもっと読むhere

+0

ちょうど私が必要としていたもの。 – 8370

関連する問題