Hibernate 編寫測試類,進行增刪改查 自動生成表
阿新 • • 發佈:2019-02-09
1.新增資料
package com.hlg.whd; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.junit.Test; public class test { @Test public void sss(){ Configuration cig = new Configuration().configure(); SessionFactory sessionFactory = cig.buildSessionFactory(); Session session = sessionFactory.openSession(); Transaction t = session.beginTransaction(); Costmer c =new Costmer(); c.setUsername("王琛昱"); c.setPassword("1888"); session.save(c); t.commit(); session.close(); sessionFactory.close(); } }
新增前新增後
2.修改資料
package com.hlg.whd; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.junit.Test; public class test { @Test public void sss(){ Configuration cig = new Configuration().configure(); SessionFactory sessionFactory = cig.buildSessionFactory(); Session session = sessionFactory.openSession(); Transaction t = session.beginTransaction(); Costmer c =new Costmer(); c.setId(1); c.setUsername("肖嘉良"); c.setPassword("6666"); session.update(c); t.commit(); session.close(); sessionFactory.close(); } }
修改前修改後
3.查詢資料
package com.hlg.whd; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import org.junit.Test; public class test { @Test public void sss(){ Configuration cig = new Configuration().configure(); SessionFactory sessionFactory = cig.buildSessionFactory(); Session session = sessionFactory.openSession(); Transaction t = session.beginTransaction(); Costmer c =(Costmer)session.get( Costmer.class,1) ; System.out.println("姓名"+c.getUsername()); System.out.println("密碼"+c.getPassword()); session.update(c); t.commit(); session.close(); sessionFactory.close(); } }
4.刪除資料
package com.hlg.whd;
import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;
import org.junit.Test;
public class test {
@Test
public void sss(){
Configuration cig = new Configuration().configure();
SessionFactory sessionFactory = cig.buildSessionFactory();
Session session = sessionFactory.openSession();
Transaction t = session.beginTransaction();
Costmer c =(Costmer)session.get( Costmer.class,1) ;
session.delete(c);
t.commit();
session.close();
sessionFactory.close();
}
}
刪除前刪除後
5.hibernate自動生成表
(1)只要在hibernate.cfg.xml新增這句話,就可以自動生成資料表
<property name="hibernate.hbm2ddl.auto">update</property>update:表示自動根據model物件來更新表結構,啟動hibernate時會自動檢查資料庫,如果缺少表,則自動建表;如果 表裡缺少列,則自動新增列。
還有其他的引數:
create:啟動hibernate時,自動刪除原來的表,新建所有的表,所以每次啟動後的以前資料都會丟失。
create-drop:啟動hibernate時,自動建立表,程式關閉時,自動把相應的表都刪除。所以程式結束時,表和資料也不會再存在。