2013-03-06 10 views
5

DBシーケンスから取り込みたい属性を持つエンティティを永続化しようとしています。私はOracleを使用しています、シーケンスを作成した、シーケンスの検証はSQLを介して動作していますが、まだ私の属性は入力されていません。私はオンライン見@Idで使用されて、この注釈を表示していますJPA:非IDカラムの@GeneratedValueの使用

@GeneratedValue(generator = "RFQ_LINE_IDS_SEQUENCE", strategy=GenerationType.SEQUENCE) 
@SequenceGenerator(name="RFQ_LINE_IDS_SEQUENCE", sequenceName="RFQ_LINE_IDS_SEQUENCE", allocationSize=1000000000) 
@Column(name = "external_line_item_id") 
private String externalLineItemId; 

すべての例が、私は私のIDのために使用しています別の属性を持っている:ここでは私が持っているものです。

私も無駄に次のことを試してみた:

@GeneratedValue(generator = "RFQ_LINE_IDS_SEQUENCE", strategy=GenerationType.SEQUENCE) 
@GenericGenerator(name = "RFQ_LINE_IDS_SEQUENCE", strategy = "sequence", 
    parameters = {@Parameter(name = "sequence", value = "RFQ_LINE_IDS_SEQUENCE")}) 
@Column(name = "external_line_item_id") 
private String externalLineItemId; 
+0

に含まれるようにするためにここに投票してください]:http://stackoverflow.com/questions/277630/hibernate-jpa-sequence-non-id – fmpdmb

答えて

3

JPAだけ@Idフィールドに@GeneratedValueのサポートを義務付け。いくつかのJPA実装(例えばDataNucleus JPA)はそれをサポートしていますが、すべてではありません。

0

私はJPAが非ID属性のために@GeneratedValueをサポートするという提案を作成しました。 [休止状態-JPA-列を非ID] [1] [1:これはうわ...私はちょうどこれがDUPかもしれ実現2.2 https://java.net/jira/browse/JPA_SPEC-113

関連する問題