に基づいてシーケンスを作成する私は、私が何をしようとしているいくつかの規準
@Entity
public class Foobar {
@Id
@GeneratedValue(strategy = GenerationType.AUTO)
private Long id;
@ManyToOne
private Organization organization;
private Long orderNr;
}
は、このオブジェクトのインクリメント注文番号を作成することです以下のクラスを持っています。問題はorderNrが組織ごとに一意であることです。たとえば、2つの組織(org1とorg2と呼ぶ)があるとしましょう。まず、Foobarのインスタンスを作成し、組織をorg1に設定します。保存すると、orderNrの値は '1'になります。次に、Foobarの別のインスタンスを作成し、組織をorg1に再度設定します。 orderNrは値 '2'を取得するはずです(Foobarのこの特定のインスタンスの場合、最初のFoobarは値 '1'を保持する必要があります)。次にFoobarのインスタンスをもう1つ作成しますが、今度は組織をorg2に設定します。これはorg2の最初のオブジェクトであるためorderNrは値 '1'を取得する必要があります。
これを達成する最も簡単な方法は何ですか? JPAやHibernateに(注釈を使って)これを簡単にやり遂げることができるものはありますか、あるいは手動でカウンタ値を追跡しなければなりませんか?
==== 質問が誤解されたために編集しました。
カウンタ?foobarのクラスに編成して行うためにすべてを宣言し、組織に固有のはなぜ組織クラスにする必要があります。 カウンタ私にはあなたたちが誤解foobarに –