import java.util.Date; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import cn.itcast.cc.hibernate.persistence.Customer; public class Main { private static SessionFactory sefac = null; // 當(dāng)類(lèi)被加載時(shí),獲取SessionFactory。 static { //創(chuàng)建Configuration時(shí),默認(rèn)加載hibernate.properties文件。 //也可以調(diào)用addResource方法,將配置文件加載進(jìn)來(lái)。 Configuration config = new Configuration(); // 將ORM中的O在此添加到 config.addClass(Customer.class); sefac = config.buildSessionFactory(); } public static void main(String[] args) { // 創(chuàng)建一個(gè)customer對(duì)象 Customer customer = new Customer(); customer.setName("changcheng"); customer.setGender(1); customer.setBirthday(new Date()); customer.setPhone("13998689955"); customer.setEmail("changcheng@google.com"); customer.setAddress("China"); // 調(diào)用保存 save(customer); // 調(diào)用查詢(xún) find(1); } private static void save(Customer customer){ //獲取session相當(dāng)于獲取了一個(gè)連接 Session session = sefac.openSession(); //此處必須使用事務(wù),否則不能保存數(shù)據(jù)。 Transaction tr = session.beginTransaction(); //直接保存 session.save(customer); //提交事務(wù) tr.commit(); //關(guān)閉會(huì)話 session.close(); } private static void find(Integer id){ //獲取session相當(dāng)于獲取了一個(gè)連接 Session session = sefac.openSession(); Transaction tra = session.beginTransaction(); //直接保存 Customer customer = (Customer) session.load(Customer.class, id); tra.commit(); //關(guān)閉會(huì)話 session.close(); System.out.println(customer); } } |