如果我不想自动生成主键,我想提供带有表的第一列的ID作为主键。@ JPA和休眠中的ID注释
2 A
4 B
7 D
13 E
...
我想的第一列2,4,7,13是表的主键。我应该只使用@Id来做注释吗?或者,如果使用了@Id,在这种情况下,主键将始终自动生成,而不是使用第一列,而不是使用第一列,而不是使用第一列。
如果我不想自动生成主键,我想提供带有表的第一列的ID作为主键。@ JPA和休眠中的ID注释
2 A
4 B
7 D
13 E
...
我想的第一列2,4,7,13是表的主键。我应该只使用@Id来做注释吗?或者,如果使用了@Id,在这种情况下,主键将始终自动生成,而不是使用第一列,而不是使用第一列,而不是使用第一列。
@Id
只会声明主键。它不会插入生成的值。如果您使用@GeneratedValue
那么它会生成该字段的值。
主键通常应该自动生成吗? – user697911
不,因为在表中还可以有非自动生成的主键 – stinepike
object id (OID)
是唯一标识object
的东西。在内,这通常是object's
指针。在关系database
table
中,行的唯一标识是primary key
。
当坚持objects
到你需要的objects
唯一标识符的数据库,这可以让你查询object
,定义relationships
到object
,并且更新和删除object
。在JPA
中,对象ID是通过@Id
注释定义的,并应与object's
表的primary key
对应。
object id
可以是自然ID或生成的ID。自然编号是发生在object
中的编号,在应用程序中有一些含义。自然ID包括电子邮件地址,电话号码和社会保险号码。生成的ID(也称为代理ID)是由系统生成的。
在JPA
中@Id
可以通过@GeneratedValue
注释容易地分配生成的序列号。
如果您始终手动为您的实体提供主键值,那么@Id
注释就足够了。
如果您使用“@ Id”,则不需要'unique = true'。 –