cascade表示級聯操作,在表之間的關系映射時用到
CascadeType.MERGE級聯更新:若items屬性修改了那么order對象保存時同時修改items里的對象。對應EntityManager的merge方法 (較常用 )
CascadeType.PERSIST級聯保存:對order對象保存時也對items里的對象也會保存。對應EntityManager的presist方法
CascadeType.REFRESH級聯刷新:獲取order對象里也同時也重新獲取最新的items時的對象。對應EntityManager的refresh(object)方法有效。即會重新查詢數據庫里的最新數據
CascadeType.REMOVE級聯刪除:對order對象刪除也對items里的對象也會刪除。對應EntityManager的remove方法
CascadeType.ALL包含所有;
@Entity @Cache(usage = CacheConcurrencyStrategy.READ_WRITE) @Table(name = "t_login_log") public class LoginLog extends BaseDomain { private User user; @ManyToOne( cascade = {CascadeType.PERSIST, CascadeType.MERGE}) @JoinColumn(name="user_id") public User getUser() { return user; } public void setUser(User user) { this.user = user; } }