基于Hibernate用标注(annotations)描述映射關系
實體類型用标注:@Entity
實體對應的表用标注:@Table
映射實體類中表示主鍵的屬性的标注是:@Id
映射實體類中表示普通屬性的标注是:@Basic
實體屬性對應的列用表注:@Column
标注暫态屬性(不映射到庫中):@Transient
映射一對一關聯關系的标注是:@OneToOne
映射多對一關聯關系的标注是:@ManyToOne
映射多對多關系的标注是:@ManyToMany
描述單一外鍵列用标注:@JoinColumn
連接配接表用表注:@JoinTable
如果一個類型不是實體,但他是某個實體的組成部分,我們用标注:@Embeddable
在描述繼承關系時,用标注:@Inheritance,該标注的屬性strategy 用來指定映射政策
代表雙向關聯關系時表示不維護表中外鍵關系的标注屬性名是:mappedBy
代表級聯操作的屬性名是:cascade
使用樂觀鎖是我們通常會在實體類型中增加一整型屬性,該屬性用标注:@Version
描述主鍵生成機制的JPA标注是:@GeneratedValue
用法:
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "SEQ_COMMONS_WJ")
@javax.persistence.SequenceGenerator(name = "SEQ_COMMONS_WJ", sequenceName = "SEQ_COMMONS_WJ")
@Column(name = "PID", updatable = false)
public Long getPid() {
return this.pid;
}