jpa是规范,hibernate是实现,jpa是hibernate的一个抽象
(如JDBC和JDBC驱动的关系)
hibernate是继承自jpa
OneToOne,OneToMany,ManyToMany上才有mappedBy属性,ManyToOne不存在该属性
left outer join
映射关联关系
(单向)CUSTOMER与ORDER
多对一
----ORDER中配置如下,CUSTOMER不用配置
@JoinColumn(name="CUSTOMER_ID")
@ManyToOne
public Customer customer;
一对多
----CUSTOMER中配置如下,ORDER不用配置
@JoinColumn(name="CUSTOMER_ID")
@OneToMany
public Set<Order> orders = new HashSet<>();
(双向)
多对一
----ORDER中配置如下
@JoinColumn(name="CUSTOMER_ID")
@ManyToOne
public Customer customer;
----CUSTOMER中配置如下
@OneToMany(mappedBy="customer")
public Set<Order> orders = new HashSet<>();
一对一
----CARD中配置如下
@OneToOne(mappedBy="card")
public Card card;
----PERSON中配置如下
@JoinColumn(name="CARD_ID",unique=true)
@OneToOne(fetch=FetchType.LAZY)
public Person person;
多对多
----ITEM中配置如下
@ManyToMany
@JoinTable(name="CATEGORY_ITEM",
joinColumns={@joinColumn(name="CATEGORY_ID",referencedColumnName="CATEGORY_ID")},
joinColumns={@inverseJoinColumn(name="ITEM_ID",referencedColumnName="ITEM_ID")})
public Set<Item> items = new HashSet<>();
----CATEGORY中配置如下
@ManyToMany(mappedBy="items")
public Set<Category> categories = new HashSet<>();
-----------------------
增删改查:与hibernate基本有对应
转载于:https://my.oschina.net/WWWW23223/blog/614610