hibernate筆記2

hibernate加載配置文件2種方式 java

這種方式看源碼其實就是讀取固定路徑固定名字的配置文件,也就是src下的hibernate.cfg.xml 數據庫

Configuration configuration = new Configuration(); configuration.configure(); 

第2中就是能夠傳參數,看源碼其實就是讀取傳入路徑的文件。 session

public Configuration configure(String resource) throws HibernateException{     log.info("configuring from resource :" + resource);     InputStream stream = getConfigurationInputStream(resource);     return doCongigure(stram,resource);     } 

hibernate的增刪改查
ui

上次完成了第一個簡單添加的例子,下面刪除,修改,查詢操做。 spa

public class Demo(){     static{          Configuration configuration = new Configuration();          configuration.configure();          sessionFactory = configuration.buildSessionFactory();     }          //查找全部Person表中對象     public void demoQuery(){       Session session = sessionFactory.openSession();       List<Person> personList = session.createQuery("from Persn").list();       for(Person person:personList){    System.out.println(person.getPname());       }       session.close();    }        //根據ID查找一個Person    public void demoQueryPersonByID(){ Session session = sessionFactory.openSession(); /** * 按照主鍵的方式查詢數據庫表中的記錄 * 第二個參數的類型必須和持久化中標示符的類型保持一致 */ Person person = (Person)session.get(Person.class, 1L); System.out.println(person.getPname()); session.close();    }        //2種刪除方式    public void demoDeletePerson(){ Session session = sessionFactory.openSession(); Transaction transaction = session.beginTransaction(); /** * 一、根據id把值從數據庫中查找出來 * 二、把對象刪除掉 */ Person person = (Person)session.get(Person.class, 1L); session.delete(person); /** * 一、新建立一個person對象 * 二、給person對象的標示符賦值 * 三、調用session.delete方法刪除 */ Person person = new Person(); person.setPid(2L); session.delete(person); transaction.commit(); session.close();    }        public void testUpdatePerson(){ Session session = sessionFactory.openSession(); Transaction transaction = session.beginTransaction(); /** * 一、根據id把持久化對象提取出來 * 二、進行修改 * 三、執行upate操做 */ Person person = (Person)session.get(Person.class, 1L); person.setPsex("man"); Person person = new Person(); person.setPid(1L); session.update(person); transaction.commit(); session.close();    }     } 
相關文章
相關標籤/搜索