JPA:在非id列上使用@GeneratedValue
发布时间:2020-12-14 19:34:25 所属栏目:Java 来源:网络整理
导读:我试图坚持一个具有我想要从DB序列填充的属性的实体.我正在使用Oracle,创建了序列,通过sql验证了序列的工作原理,但我的属性却没有填充.这就是我所拥有的: @GeneratedValue(generator = "RFQ_LINE_IDS_SEQUENCE",strategy=GenerationType.SEQUENCE)@Sequence
我试图坚持一个具有我想要从DB序列填充的属性的实体.我正在使用Oracle,创建了序列,通过sql验证了序列的工作原理,但我的属性却没有填充.这就是我所拥有的:
@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一起使用,但我有另一个属性,我正在使用我的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; 解决方法
JPA只强制在@Id字段上支持@GeneratedValue.一些JPA实现(例如
DataNucleus JPA)支持它,但不是全部支持它.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |