CascadeType.PERSIST只有A類新增時,會級聯(lián)B對象新增。若B對象在數(shù)據(jù)庫存(跟新)在則拋異常(讓B變?yōu)槌志脩B(tài))
CascadeType.MERGE指A類新增或者變化,會級聯(lián)B對象(新增或者變化)
CascadeType.REMOVE只有A類刪除時,會級聯(lián)刪除B類;
CascadeType.ALL包含所有;
CascadeType.REFRESH沒用過。
綜上:大多數(shù)情況用CascadeType.MERGE就能達到級聯(lián)跟新又不報錯,用CascadeType.ALL時要斟酌下CascadeType.REMOVE
CascadeType.MERGE指A類新增或者變化,會級聯(lián)B對象(新增或者變化)
CascadeType.REMOVE只有A類刪除時,會級聯(lián)刪除B類;
CascadeType.ALL包含所有;
CascadeType.REFRESH沒用過。
綜上:大多數(shù)情況用CascadeType.MERGE就能達到級聯(lián)跟新又不報錯,用CascadeType.ALL時要斟酌下CascadeType.REMOVE