Hibernate中的即時載入(get)和延時載入(load)
一,即時載入
Student student = session.get(Student.class, 22);
System.out.println(student);
以一個(Student)學生類測試類,查詢id(主鍵)為22,即時載入時如果沒查詢到該物件就直接返回null,查詢到放回查詢到的物件。
二,延時載入
Student student2 = session.load(Student.class, 22);
System.out.println(student2);
延時載入:同樣以一個(Student)學生類測試類,查詢id(主鍵)為22,延時載入只有在物件使用的時候才會傳送SQL語句。
沒有該對時就會直接報錯(以上面列印了student2為例,查詢出來並沒有這個物件列印物件呼叫了toString,本身沒有這個物件,呼叫toString肯定會報錯)。
相關推薦
Hibernate中的即時載入(get)和延時載入(load)
一,即時載入 Student student = session.get(Student.class, 22); System.out.println(student); &nb
什麼是hibernate的延遲載入,什麼時候使用延時載入,為什麼要用延時載入?
所謂懶載入(lazy)就是延時載入,延遲載入。 什麼時候用懶載入呢,我只能回答要用懶載入的時候就用懶載入。 至於為什麼要用懶載入呢,就是當我們要訪問的資料量過大時,明顯用快取不太合適, 因為記憶體容量有限 ,為了減少併發量,減少系統資源的消耗, 我們讓資料在需要的時候才進行載入,這時我們就用到了懶載入。 比
ScheduledThreadPoolExecutor實現定時器和延時載入功能
java.util.concurrent.ScheduledThreadPoolExecutor 是 JDK1 .6之後自帶的 包,功能強大,能實現定時器和延時載入的功能 各類功能和處理方面優於Timer 1、定時器: ScheduledThreadPoolExecut
JavaScript中變量、作用域和內存問題(JavaScript高級程序設計第4章)
外部 對象的引用 pan object 揮手 fun 可用內存 限制 argument 一、變量 (1)ECMAScript變量肯能包含兩種不同的數據類型的值:基本類型值和引用類型值。基本類型值指的是簡單的數據段,引用類型值指那些可能由多個值構成的對象。 (2)基本數據類型
java中接口(interface)和虛基類(abstract class)的區別
private 特定 知識庫 價值 ceo 實現 相互 定義 協調 在Java語言中,abstract class和interface是支持抽象類定義的兩種機制。正是由於這兩種機制的存在,才賦予了Java強大的面向對象能力。abstract class和interface之
一個類,有新增元素(add)和獲取元素數量(size)方法。 啟動兩個線程。線程1向容器中新增數據。線程2監聽容器元素數量,當容器元素數量為5時,線程2輸出信息並終止
override tac trace add syn countdown print import 數據 方式一: /** * 兩個線程要是可見的所以要加上votalile */public class Test_01 { public static void
通過資料庫批量向kettle中插入資料,建立trans和job的模板(按照不同的要求需要自行調整)
import psycopg2 # 用來操作資料庫的類 class GPCommand(object): # 類的初始化 def __init__(self): self.hostname = 'XXX.XX.X.XX' self.username
資料結構演算法題/將陣列中元素奇數排在前面偶數在後面(前面奇數和後面的偶數分別有序)
一個無序整數陣列,對它排序,使其前半部分都為奇數有序,後半部分為偶數有序。 (1)方案1 O(n^2) 基本想法:利用插入排序演算法,對奇偶子序列分別插入排序。用兩個變數把整個陣列分割為三個部分,第一個部分為奇數有序子序列,第二部分為偶數有序子序列,第三部分為未排序子序列。使用兩個變數進行分
關於javaweb中的絕對路徑和相對路徑(關於引用外部資源時的路徑問題)
相信大家在寫web專案時,對於外間資源的引用多多少少都會用到,而此時引用的路徑就顯得十分重要!(在跳轉或者其它請求後頁面樣式得丟失便就是路徑得問題) 在開始之前大家需要明白一點就是web專案建立的時候會有一個Web-Content,但是在專案釋出後這個就不存在了,所以再訪問的時候路徑不許要考慮W
靜態連結庫(LIB)和動態連結庫(DLL),DLL的靜態載入和動態載入,兩種LIB檔案。
靜態連結庫(LIB)和動態連結庫(DLL),DLL的靜態載入和動態載入,兩種LIB檔案。 一、 靜態連結庫(LIB,也簡稱“靜態庫”)與動態連結庫(DLL,也簡稱“動態庫”)的區別 靜態連結庫與動態連結庫都是共享程式碼的方式,如果採用靜態連結庫,則無論你願不願意,lib 中的指令都全部被直接包含在最
中序遍歷--遞迴和非遞迴(java版)
根據中序遍歷的順序,對於任一結點,優先訪問其左孩子,而左孩子結點又可以看做一根結點,然後繼續訪問其左孩子結點,直到遇到左孩子結點為空的結點才進行訪問,然後按相同的規則訪問其右子樹。因此其處理過程如下: 對於任一結點root,引入一個輔助節點p,其作用是:標記已經訪問過的節點, &nb
python中的可迭代物件和迭代器(iter函式和next函式)
iter函式: 獲取可迭代物件身上的迭代器, 會呼叫可迭代物件身上的iter的方法 next函式: 獲取迭代器中的下一個值,會呼叫迭代器物件身上的next的方法 from collections import Iterable from collections im
leetcode:在陣列中查詢元素的第一個和最後一個位置(java雙向指標)
給定一個按照升序排列的整數陣列 nums,和一個目標值 target。找出給定目標值在陣列中的開始位置和結束位置。 你的演算法時間複雜度必須是 O(log n) 級別。 如果陣列中不存在目標值,返回 [-1, -1]。 示例 1: 輸入: nums = [5,7,7,8,8,10], tar
初識Java中的四大執行緒池和ThreadPoolExecutor的使用(歡迎指正)
初識Java中的四大執行緒池和ThreadPoolExecutor的使用(轉載+自身心得) 為什麼用執行緒池? 1.建立/銷燬執行緒伴隨著系統開銷,過於頻繁的建立/銷燬執行緒,會很大程度上影響處-理效率; 2.執行緒併發數量過多,搶佔系統資源從而導致阻塞; 3.對執行緒進行一些簡單的
SQL SERVER 主鍵和外來鍵中的 級聯刪除(ON DELETE CASCADE)和級聯更新(ON UPDATE CASCADE)
建立學生表 create table gh_student( stuno varchar(3) primary key, stuname varchar(4), stuclass varchar(3) ) 插入資料 insert into gh_student values
c++中的 單例模式(singleton)和雙檢測鎖(Double-Checked Locking)
今天學習了一下c++中的singleton。google了一篇論文C++ and the Perils of Double-Checked Locking。大名鼎鼎的Scott Meyers寫的。論文使用c++講解,看了之後受益匪淺。 巧的是,讀完之後剛好看見http://
Java實現演算法導論中圖的廣度優先搜尋(BFS)和深度優先搜尋(DFS)
對演算法導論中圖的廣度優先搜尋(BFS)和深度優先搜尋(DFS)用Java實現其中的虛擬碼演算法,案例也採用演算法導論中的圖。 import java.util.ArrayList; import java.util.HashMap; import java.util.It
Node.js+Express構建Http服務(GET方式和POST方式)
Node.js 前提 環境:windows7下載地址:http://nodejs.org/download/ 安裝 官網下載一個安裝檔案點選下一步安裝完成即可. 驗證安裝是否成功:node -v 基本HTTP伺服器 c:/http.js Js程式碼
硬聚類(HCM)和模糊聚類(FCM)在彩色影象分割中的具體應用
示例工程見: 一年前我寫過模糊聚類演算法(FCM)和硬聚類演算法(HCM)的VB6.0實現及其應用 一文,之後,有不少同仁向我詢問如何將這個演算法應用在彩色影象的分割上,鑑於影象資料的特殊性,這裡簡單的談談在影象中聚類演算法的需要注意一些細節。 C均值
巨集(#define)和類型別名(typedef)在結構和共用體(聯合體)型別定義中的應用
在學習cocos2d-x的過程中,經常看到各種大寫的識別符號,有些是自定義的巨集,有些是複雜型別的別名。前者用#define來實現,後者用typedef來實現。它們的存在有兩個共同目的(當然還有其他不同的目的),一是用簡單的識別符號來代替複雜的程式碼,二是(在條件編譯語句的