<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-95  評論-31  文章-10  trackbacks-0
    注意點:
    1: 不要動輒就配置@OneToOne @OneToMany @ManyToOne @ManyToMany;
          根據業務想清楚當前實體需不需要關聯的實體詳情,需要在配置;
          否則這種配置會增加sql查詢,需進一步增加優化操作,增加不必要的麻煩!
    示例1(配置了不必要的關聯關系)
    @Entity
    @Table(name = "sb_review")
    public class Review {
        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private Long id;
        /**
         * 評論
         
    */
        @Column(name = "content",length = 2048)
        private String reviewContent;
        /**
         * 內容id
         
    */
         @Column(name = "reference_id",length = 2048)
        private Long  referenceId;
        /**
         * 當前評論的人
         
    */
        @ManyToOne(targetEntity = Account.class,optional = false)
        @JoinColumn(name = "review_account_id", nullable = false,referencedColumnName = "id")
        private Account account;
        get/setxxx   ......
    }
    紅色部分就是不必要的關聯配置,這種配置在進行from Review的時候會關聯查詢account實體,多出不必要的sql,如果要優化,就還得Dao增加自定義的@Query注解方法,比較麻煩
    而實際業務可能并不需要當前評論人的詳細信息,
    改進后:
    @Entity
    @Table(name = "sb_review")
    public class Review {
        @Id
        @GeneratedValue(strategy = GenerationType.IDENTITY)
        private Long id;
        /**
         * 評論
         
    */
        @Column(name = "content",length = 2048)
        private String reviewContent;
        /**
         * 內容id
         
    */
         @Column(name = "reference_id",length = 2048)
        private Long  referenceId;
        /**
         * 當前評論的人
         
    */
        @Column(name="review_account_id")
        private Long reviewAccountId;

        get/setxxx   
    }
    紅色部分就配置屬性即可,從內容方進行關聯查詢多個評論的時候,就不會多出查詢賬戶信息的sql。

    2: 只要@Query使用jpql方式,那么方法入參加入pageable仍然可以正常分頁,但是無法用fetch!  示例:
        @Query(value = "select s from ShareCare s  left join s.reviewList ")
        Page<ShareCare> findAllWithReviews(Pageable pageable);

    3:做好第一步,領域模型配置好關聯關系后,看情況采用@Query注解查詢方式,增加join fetch操作可以減少sql查詢 

    posted on 2017-11-17 14:19 朔望魔刃 閱讀(3200) 評論(0)  編輯  收藏 所屬分類: java
    主站蜘蛛池模板: av无码久久久久不卡免费网站| 亚洲AV第一成肉网| 看成年女人免费午夜视频| 先锋影音资源片午夜在线观看视频免费播放 | 美女的胸又黄又www网站免费| 久久ww精品w免费人成| 久久精品亚洲乱码伦伦中文| 亚洲一区精彩视频| 久久国产色AV免费看| 国产精品亚洲αv天堂无码| 亚洲午夜成人精品无码色欲| 亚洲视频免费在线观看| 国产亚洲精品影视在线产品| 色天使亚洲综合一区二区| 日韩不卡免费视频| 麻豆亚洲av熟女国产一区二| 中国一级全黄的免费观看| 全亚洲最新黄色特级网站| 亚洲熟妇成人精品一区| 无码一区二区三区AV免费| 亚洲国产av美女网站| 久久国产免费观看精品3| 久久精品国产精品亚洲色婷婷| 中文字幕乱理片免费完整的| 亚洲国产精品综合久久网络| 无码色偷偷亚洲国内自拍| 免费鲁丝片一级在线观看| 激情五月亚洲色图| 99在线视频免费观看视频 | 亚洲成人黄色在线| 69天堂人成无码麻豆免费视频| 久久久久亚洲AV成人片| 美丽姑娘免费观看在线观看中文版| 国产亚洲A∨片在线观看| a毛片免费全部播放完整成| 国产精品亚洲玖玖玖在线观看| 少妇亚洲免费精品| 久久亚洲AV永久无码精品| 国产精品美女久久久免费| 在线观看亚洲天天一三视| 手机看片国产免费永久|