hibernate03增刪改查

2022-05-26 10:36:13 字數 2357 閱讀 8824

<?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...