專案的整體結構如下
1.配置檔案
hibernate.cfg.xml
jdbc:mysql:
root
root
com.mysql.jdbc.driver
org.hibernate.dialect.mysqldialect
thread
true
true
2.對映檔案
3.實體類
4.例子
package cn.test.test;
import j**a.util.list;
import org.hibernate.query;
import org.hibernate.session;
import org.hibernate.sessionfactory;
import org.hibernate.transaction;
import org.hibernate.cfg.configuration;
import org.junit.test;
import cn.test.entity.product;
public class test001 catch (exception e)
}/**
* 刪除
*/@test
public void test005() catch (exception e)
}/**
* updata更新的方法
* s**eorupdata
* 先根據id到資料庫中判斷是否有這條資料
* 如果有那麼執行更新的方法
* 如果沒有那麼執行增加的方法
*/@test
public void test004() catch (exception e)
}/**
* 根據id查詢具體的某一條資料
* load 延遲載入
* 使用load方法時不會直接發動sql語句到資料庫中查詢具體的資料,而是會先得到乙個只有id屬性的**物件,只有當使用到其他屬性時才會傳送
* sql語句到資料庫中查詢具體的資料
* get 不延遲載入
*/@test
public void test003() catch (exception e)
}/**
* ------------hql
* * 查詢語法
* 1.from子句
* from product #查詢所有的product(查詢所有屬性)
* 2.select子句
* select product.id from product 查詢所有product的id(只查詢id)
* 3.where
* from product where id = 'haha'
* from product where productname is not null
* 4.使用表示式
* from product where lower(productname) = 'hhh'
* lower()函式用於把字串中的每個字母改為小寫
* from product where year(createdate) = 1980
* year()函式用於獲取日期欄位的年份
* *
* 如何為sql語句傳入引數:
* 1.拼接字串
* 2.引數繫結
* 1>.按位置繫結引數
* 2>.按名稱繫結引數
* 3>.將資料封裝到物件中繫結引數
* 如 : from product where id = :id and productname = :name
* product p = new product();
* p.setid(11);
* p.setproductname("hello");
* query.setproperties(p);
* */
/*** 拼接字串
*/@test
public void test006()
}/**
* 按位置繫結引數
*/@test
public void test007()
}/**
* 按名稱繫結引數
*/@test
public void test008()
}/**
* 分頁查詢
* setfirstresult((當前頁-1)*頁面容量)
* setmaxresults(頁面容量)
*/@test
public void test009() }}
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的簡單實現
實習了一段時間,為了滿足老闆的 要求 不用框架。逼不得已,封裝了一套jdbc,基本上是跟著hibernate的思路來實現。說不定以後大家也會像我一樣苦逼,被迫用上了。裡面比較值得一說的是類似hibernate的getcurrentsession opensession方法的實現,其核心就是使用thr...