load方法是差別于get方法的,load是在記憶體中先擷取的是一個代理對象,get方法是直接通過select 語句擷取,
Teacher teacher=(Teacher)session.get(Teacher.class,1);
那麼這個時候已經發出了 select語句,那麼這個teacher對象已經儲存了資料庫中的數
據;
而 Teacher teacher=(Teacher)session.load(Teacher.class,1)這種形式是先生成一
個Teacher的代理對象,這個代理對象還不具有資料庫調出來的資料,select語句還沒有
發出,當執行該對象的具體方法時,這個時候就發出了select語句,就相當于是這個時
候Teacher對象才具有了資料,相當于是這個時候才執行個體化了,也就是 在調用
t.getName()方法的時候 才發出了select語句,有點延遲加載的意思(個人看法)。
寫之記錄記錄。。。