注解的@Id可以放在属性上和get方法上, 建议放在方法上
一般采用jpa的注解, 因为移植性好
了解常用注解
@Entity
@Table
@GeneratedValue 默认情况下会采用auto生成方式
如果要采用uuid的生成方式,由于jpa注解不支持此种方法,则要用hibernate的注解联合起来使用
具体的用法如下:
@GenericGenerator(name="idGenerator", strategy="uuid") //这个是hibernate的注解
@GeneratedValue(generator="idGenerator") //使用uuid的生成策略
对于普通属性的注解
@Column(name="username", nullable=false, unique=true, length=30) 不为空, 唯一, 长度30
对于不想进行持久化的属性的注解
@Transient
hibernate JPA多对一关联映射
采用@ManyToOne来映射多对一
关于关联对象在表中的维护, JPA采用关联对象+ "_" + "id"方式作为字段加入表中.
一对多关联映射
mappedBy在那一端, 那一端就不维护关系
相当于hibernate中的inverse=true
采用@OneToMany
了解mappedBy属性
JoinColumn属性
TargetEntity属性
采用manyToMany映射
采用@JoinTable指定第三方表