構建hibernate 框架實現增刪改查功能


第一步,新建一個項目 , 導包   一類是hibernate的jar包,一類是jdbc的jar包

hibernate的jar包是注意紅框的地址就是jar包的位置,將這些jar包全都導入lib根下;然后將jdbc的jar包導入lib根下。

第二步:配置hibernate.cfg.xml文件

查看搜索出來的文件,將帶有

划紅框的五個屬性名的文件復制到項目src根下,取名為hibernate.cfg.xml(可以取其他名字,不過要在配置中選擇你取的名字,不然找不到)

紅框中的1 是方言  可以到查找,將這個文件拖拽到Eclipse中打開,Ctrl+F 查找dialect

將我們需要的dialect.class的值復制粘貼到我們自己建的文件中  url,username,password 的值就用之前我們講過的即可;

配置文件中的 <property name="show_sql">true</property> 是為了在控制台顯示sql語句

這樣hibernate框架環境就搭建好了

第三步,建好hibernate框架之后 需要我們有對應的數據庫和實體類,所以我們要去創建數據庫表和相應的實體類

同時要創建一個對應類名的hbm.xml文件,可以去在輸入框中輸入hbm.xml查詢,查看我們查到的文件,拖拽到Eclipse中打開,

這里的class是類名,name這里是Fruit的實體類地址   這里的地址可以在class的上級屬性package中設置,這里就只需要實體類名

這里的id是主鍵 (建議屬性名和列名一致)

這里的property是非主鍵 (建議屬性名和列名一致)

第四步,創建好庫表和實體類之后我們新建一個mian來調用框架實現增刪改查功能

紅字1是讀取hibernate.cfg.xml的配置,並加載hibernate的數據庫和實體類,這里就必須要在hibernate.cfg.xml中加入

<mapping resource="com/itnba/maya/bean/Fruit.hbm.xml" /> 不然就找不到對應的hbm.xml文件,實現不了功能

紅字2是根據配置生成session工廠

紅字3是用工廠生成session

紅字4 關閉session會話

第五步,實現功能

1.增

		Fruit data = new Fruit();           //new一個對象   這里是瞬時狀態
		data.setIds("i001");
		data.setName("二萌");
		data.setPrice(1.0);
		data.setSource("山東");        //給對象賦值
		data.setNumbers(1);
		data.setImage("無");
		try{
			session.beginTransaction();        //開始事務 (不用事務會報錯)
			session.save(data);           //session.sava()方法保存 瞬時狀態改變成持久化狀態
			session.getTransaction().commit();   //事務提交
		}
		catch(Exception es){  
			session.getTransaction().rollback();    //出錯時事務回滾
		}
		session.close();

運行程序,在控制台顯示sql語句

查看數據庫結果:可以看到數據庫增加了一個 i001的數據

2.查

分為查看單個和查看所有

查看單個

 

         try{
			session.beginTransaction();                     
			Fruit fruit = session.get(Fruit.class, "i001");     //也可以用session.load(Fruit.class,"i001") 查詢單個
			System.out.println(fruit.getName()+fruit.getSource()+fruit.getNumbers());    在控制台顯示名稱產地和庫存
			session.getTransaction().commit();
		}
		catch(Exception es){
			session.getTransaction().rollback();
		}
		

結果如下

查所有

          try{
			session.beginTransaction();
			List<Fruit> list = session.createQuery("from Fruit").getResultList();         //查詢出來的是一個集合
			for(Fruit data : list){
				System.out.println(data.getName()+data.getSource()+data.getNumbers());
			}
			session.getTransaction().commit();
		}
		catch(Exception es){
			session.getTransaction().rollback();
		}

 結果如下 

3.刪

刪和改  都需要我們先查出來然后再進行操作

try{
			session.beginTransaction();
			Fruit data = session.get(Fruit.class, "i001");  //先查出來
		if(data != null){
			session.delete(data);                            //在進行刪除操作
			session.getTransaction().commit();
		}
		}
		catch(Exception es){
			session.getTransaction().rollback();
		}
		

運行之后我們到數據庫看下結果

可以看到i001的數據已刪除

4.改

try{
			session.beginTransaction();
			Fruit data = session.get(Fruit.class, "k001");            //先查詢
			if(data != null){
			data.setName("蘋果");                    //修改我們要改的屬性
			session.update(data);                    //再進行修改操作
			session.getTransaction().commit();
			}
		}
		catch(Exception es){
			session.getTransaction().rollback();
		}

運行結果看下數據庫:

可以看到k001原來的name為二萌 現已改成蘋果

這樣就簡單利用hibernate 框架實現增刪改查功能。

 

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM