问题描述
- hibernate 怎么配置oracle的id生成策略
-
之前使用hibernate连接mysql,后来需要转为oracle。
原来:
mysql的id设置为自增,
hibernate中对应的自增策略
@GeneratedValue(strategy=GenerationType.IDENTITY)
private int userId;现在:
oracle中的id使用序列加触发器实现了插入前自增
但是现在hibernate中应该怎么配置?
解决方案
@GeneratedValue(strategy=GenerationType.SEQUENCE,generator="goods")
@SequenceGenerator(name="goods",sequenceName="seq_goods",allocationSize=1,initialValue=1)
private int userId;
其中generator起的名字和name的名字一致就可以了,例如我都命名为goods,sequenceName是起一个序列名,后面那两个一个是每次增一个,初始值是1
解决方案二:
@Id
@Column(name="UUID", length=32, nullable = false)
@GeneratedValue(generator = "system-uuid")
@GenericGenerator(name = "system-uuid", strategy = "uuid")
private String uuid;
时间: 2024-09-05 06:23:34