@Id 是属性或方法级别的注解,该注解没有参数,用于标注实体的主键(映射到数据库表的主键)。

1. 示例

1
2
3
4
5
6
7
8
9
10
11
12
13
@Entity(name = "person")
public class Person implements Serializable {
@Id
private Long id;
private String name;
private String mail;
// getters and setters
}

产生的 DDL 语句(MySQL):

1
2
3
4
5
6
CREATE TABLE `person` (
`id` bigint(20) NOT NULL,
`mail` varchar(255) DEFAULT NULL,
`name` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;