我们在项目中使用MYSQL和Hibernate。
JPA用于在DB中保留对象。
我们有多个具有相似代码的类
@Entity
@Table(name = "users")
class Users implement Serializable {
@Id
@GeneratedValue(strategy=GenerationType.AUTO)
private Long id;
.
.
.
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
}
现在我们也想支持oracle。我们该怎么做? 策略= oracle不支持GenerationType.AUTO。
我们可以在每个POJO中定义一个我们不想做的序列吗?
请提供一些意见,以便我们继续前进。
答案 0 :(得分:2)
AUTO策略也适用于Oracle。与MySQL的不同之处在于它将使用序列而不是依赖于auto_increment ID。
如果需要,您甚至可以控制每个实体的序列名称:请参阅Hibernate sequence on oracle, @GeneratedValue(strategy = GenerationType.AUTO)。
答案 1 :(得分:1)
@Id
@SequenceGenerator(name="admin_seq", sequenceName="unique_id")
@GeneratedValue(strategy=GenerationType.AUTO, generator="admin_seq")
private Long id
为我工作,谢谢你的所有答案