<?xml version="1.0"?>
/** * jdbc有常用的api* hibernate也有自己常用的api(核心)
* 01.configuration 類 :讀取我們的核心配置檔案----hibernate.cfg.xml
* 介面
* 02.sessionfactory :初始化hibernate需要的各種引數!
* jdbc.properties初始化一次! sessionfactory也是只需要初始化一次即可!寫成單例!
*
* 03.session:之前使用的httpsession(使用者session)! 現在的session叫會話session!
* hibernate就是通過session來操作物件的(增刪改查)以及建立事務物件!
* 04.tranaction :進行事務的處理
* 05.query :hibernate中的查詢介面(sql,hql)
* 06.criteria:hibernate中的查詢介面,是對query進行了簡單封裝!
* 更能體現使用的是物件導向的思想來運算元據庫!
*/public class studenttest
//在執行測試方法之後
@after
public void after()
//新增
@test
public void addstudent()
/*** 根據id刪除指定的學生
* * 會產生 2條sql語句
* 01.根據id去資料庫中查詢 有沒有對應的資料
* 02.根據id刪除 指定delete語句
*/@test
public void delstudent()
/*** 根據id修改指定的學生
* 只會執行一條update語句!
* 如果資料庫中沒有指定id的資料,沒效果!有 就更新!
*/@test
public void updatestudent()
/*** 查詢資料庫中指定學生的資訊
* 查詢 不需要事務!
* get和load的區別
* get:
* 01.在get()立即產生一條sql語句
* 02.首先回去hibernate的1級快取(session)中查詢有沒有對應的資料
* 如果有,直接返回,就不會訪問資料庫!
* 如果沒有,去2級快取中查詢(sessionfactory)中查詢!
* 如果2級快取中也沒有資料,則會產生一條select語句 訪問資料庫!
* 03.如果資料庫中存在該資料 則返回
* 04.沒有對應的資料 返回 null
*/@test
public void getstudent()
//驗證不會訪問資料庫
@test
public void getstudent2()
/*** evict()從session快取中 清除指定的物件
*/@test
public void evictstudent()
/*** clear() 從session快取中 清除所有的物件
*/@test
public void clearstudent()
/*** load: 懶載入
* 01.不會立即產生sql語句
* 02.在使用者使用真正物件的時候才去訪問資料庫!
* 03.首先回去hibernate的1級快取(session)中查詢有沒有對應的資料
* 如果有,直接返回,就不會訪問資料庫!
* 如果沒有,去2級快取中查詢(sessionfactory)中查詢!
* 如果2級快取中也沒有資料,則會產生一條select語句 訪問資料庫!
* 04.如果資料庫中存在該資料 則返回
* 05.沒有對應的資料 返回 objectnotfoundexception 異常
* 06.如果想實現和 get()一樣的效果!怎麼做?
* 在對應的hbm.xml檔案中的 class節點上 新增 lazy="false" 立即載入!
*/@test
public void loadstudent()
}
Hibernate增刪改查介面
我演示的是乙個書籍管理系統中書籍資訊增刪改查的乙個例項 首先,先配置hibernate環境,這個之前介紹過,這裡就不做詳細介紹了 建立增刪改查介面 public inte ce bookdao具體實現增刪改查的方法 public book selectbook int id catch hibern...
Hibernate入門 增刪改查
一 hibernate入門案例剖析 建立實體類student 並重寫tostring方法 public class student public void setsid integer sid public integer getage public void setage integer age ...
Hibernate (2)增刪改查
案例名稱 hibernate完成增刪改查 案例描述 抽取出工具類並完成刪除 修改 查詢功能。具體過程 1 使用上面的例子 hibernate 1 hibernate入門 2 新建hibernateutils 用於封裝建立session的方法。package com.xsyu.tts.util imp...