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

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

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

    溫故知新:hibernate_03延遲加載

    延遲加載作為一種提升效率的機制,利弊共存,優點是,在查詢中,某些對象可能在查詢之后,不會使用,比如User對象關聯了Department對象,在只需要使用User對象的時候,如果不獲取Deaprtment的相關信息,則不會查詢Deparment對象的內容。但是弊端也顯而易見,延遲加載在session關閉之后會失效,如果延遲加載使用不當,很容出現無法取得對象的情況。
     1 package demo;
     2 
     3 import org.hibernate.Session;
     4 import org.junit.Test;
     5 
     6 import domain.Student;
     7 import util.HibernateUtil;
     8 
     9 public class App 
    10 {
    11     //省略實體類和相關配置
    12     @Test
    13     public void lazyLoad() {
    14         Session session = null;
    15         try {
    16             session = HibernateUtil.openSession();
    17             session.beginTransaction();
    18             
    19             //s對象在load完畢之后是一個托管對象,只有一個id屬性,如果不使用該對象,則不會進行查詢
    20             //但是,不論是否能夠查詢到,s對象不是空,是一個含有id的代理對象
    21             Student s = (Student) session.load(Student.class, 99);
    22             //System.out.println(s.getId());
    23             
    24             //get方法不存在延遲加載機制,會直接查詢,但是查詢不到會返回null
    25             //而不是一個代理對象
    26             Student s1 = (Student) session.get(Student.class, 5);
    27             System.out.println(s1);
    28             
    29             //取得s2對象之后,若不進一步取得s2所包含的department屬性,則不會進一步發送sql去
    30             //取得department的信息
    31             Student s2 = (Student) session.load(Student.class, 10);
    32             //System.out.println(s2.getDepartment().getName());
    33             
    34             session.getTransaction().commit();
    35 
    36         } catch (Exception e) {
    37             if (session != null) {
    38                 session.getTransaction().rollback();
    39             }
    40         } finally{
    41             if (session != null) {
    42                 session.close();
    43             }
    44         }
    45     }
    46     
    47 }
    48     
    49 

    posted on 2015-01-20 14:57 都較瘦 閱讀(80) 評論(0)  編輯  收藏 所屬分類: ORMFramework

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    導航

    統計

    公告

    博客定位:囿于目前的水平,博客定位在記錄自己的學習心得和隨手的練習

    常用鏈接

    留言簿

    隨筆分類

    隨筆檔案

    文章分類

    文章檔案

    搜索

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 久久久精品免费国产四虎| 免费激情网站国产高清第一页| 中文在线日本免费永久18近| 永久黄网站色视频免费观看| 亚洲综合欧美色五月俺也去 | 免费人成网站在线观看不卡| 亚洲综合网站色欲色欲| 国产在线国偷精品免费看| 亚洲人成伊人成综合网久久久| 一级中文字幕乱码免费| 亚洲精品国精品久久99热一| 日本道免费精品一区二区| 亚洲国产精品国自产电影| 最近免费中文字幕大全免费版视频| 久久久久久亚洲Av无码精品专口| 91精品视频在线免费观看| 亚洲三级视频在线观看| 免费毛片在线播放| 永久免费精品影视网站| 亚洲精品无码mv在线观看网站| 95老司机免费福利| 亚洲综合无码无在线观看| 亚洲国产婷婷综合在线精品| 中文字幕在线免费看线人| 亚洲最大的视频网站| 大学生美女毛片免费视频| 成人免费网站视频www| 亚洲第一区香蕉_国产a| 青青久在线视频免费观看| 免费大片av手机看片高清| 亚洲av之男人的天堂网站| 老司机在线免费视频| 九九综合VA免费看| 亚洲狠狠狠一区二区三区| 免费观看国产精品| 免费无码成人AV在线播放不卡| 亚洲国产欧美国产综合一区| 国产亚洲综合成人91精品| 成人免费看吃奶视频网站| a级毛片免费完整视频| 亚洲精品无码中文久久字幕|