91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

jpa中無法刪除onetomany中many怎么辦

發布時間:2021-12-06 10:07:51 來源:億速云 閱讀:375 作者:iii 欄目:開發技術

這篇文章主要介紹“jpa中無法刪除onetomany中many怎么辦”,在日常操作中,相信很多人在jpa中無法刪除onetomany中many怎么辦問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”jpa中無法刪除onetomany中many怎么辦”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

    jpa 無法刪除onetomany中many問題

    問題描述

    今天在做項目遇到一個問題,建立兩個實體order和orderDetail,他們是onetomany關系,當我想要之間刪除一個orderDetail時,發現不能刪除但是程序也不出錯。

    實體建立模型如下圖:

    order中:

    jpa中無法刪除onetomany中many怎么辦

    orderDetail中:

    jpa中無法刪除onetomany中many怎么辦

    解決思路

    1.首先我想到了直接刪除orderDetail不行,是否可以直接通過update order的關聯關系進行級聯刪除啦,于是寫了一下代碼

    jpa中無法刪除onetomany中many怎么辦

    結果發現這樣是可以刪除orderDetail,但是這種刪除方式并不是我想要的,而且感覺也不是最好的解決方法。

    2.在結合上一種方法實現成功后,突然想到是否是關聯關系建立的原因,如果我先把關聯關系斷開,在進行刪除orderDetail是否能成功:

    jpa中無法刪除onetomany中many怎么辦

    結果證明,成功刪除

    小結一下

    雖然實現了我想要的功能,但是jpa的刪除具體邏輯還需要深入研究。自我感覺是因為order是關系維護方,想要刪除many端就必須先斷開關系在進行刪除

    jpa @OneToMany 刪除不了集合數據

    在使用jpa的時候,如果有@OneToMany關系。想刪除many的單個數據。有時候刪除不了。 jap關系如下:一個用戶對應多個角色。并且user實體中CascadeType.ALL

    //user實體
    @OneToMany(cascade = CascadeType.ALL,fetch= FetchType.LAZY,mappedBy = "user")
        private Set<Role> roles = new HashSet<Role>();
    
    //role實體
    @ManyToOne(fetch= FetchType.LAZY)
        @JoinColumn(name="user_id")
        private User user;

    這時候如果想刪除role。必須做2個事情,1、刪除role。2、把role從集合roles中移除。如下:

    roleRepo.delete(role);//這里刪除操作需要delete和從集合中remove一起操作才能生效
    user.getRoles().remove(role);
    userService.update(user);

    如果不這樣操作。就會不生效。

    到此,關于“jpa中無法刪除onetomany中many怎么辦”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

    向AI問一下細節

    免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

    AI

    呼和浩特市| 合作市| 永善县| 景东| 皋兰县| 化隆| 阿鲁科尔沁旗| 五大连池市| 神农架林区| 新泰市| 高平市| 绵阳市| 普陀区| 进贤县| 武隆县| 朔州市| 盐城市| 东山县| 苍山县| 正阳县| 灌阳县| 饶平县| 中山市| 泰安市| 安远县| 承德县| 迁西县| 伊宁市| 澄城县| 永城市| 金坛市| 台中市| 普格县| 启东市| 岗巴县| 宜丰县| 昌都县| 兴城市| 邛崃市| 和顺县| 垦利县|