悟心

          成功不是將來才有的,而是從決定去做的那一刻起,持續累積而成。 上人生的旅途罷。前途很遠,也很暗。然而不要怕。不怕的人的面前才有路。

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            93 隨筆 :: 1 文章 :: 103 評論 :: 0 Trackbacks
          package com.java.domain.DAO;
          import org.hibernate.Session;
          import org.hibernate.Transaction;
          import com.java.domain.HSFctory.HibernateSessionFactory;
          import com.java.domain.POJO.Person;
          public class Insert {
           
           private Session session;
           // 在構造方法之中實例化session對象
           public Insert() {
            //獲得Session:
            this.session = HibernateSessionFactory.getSession();
           }
           
           public void insert(Person p) {
            //事務開始:
            Transaction transaction = this.session.beginTransaction();
            //執行事務:
               this.session.save(p);
            //事務提交
            transaction.commit();
            //關閉session:
            this.session.close();
           }
           
          }

          package com.java.domain.DAO;
          import org.hibernate.Query;
          import org.hibernate.Session;
          import org.hibernate.Transaction;
          import com.java.domain.HSFctory.HibernateSessionFactory;
          import com.java.domain.POJO.Person;
          public class Delete {
           
           private Session session;
           public Delete() {
            this.session = HibernateSessionFactory.getSession();
           }
           //該刪除要先查出才刪除。性能不高。
           public void delete(Person p) {
            //事務開始:
            Transaction transaction = this.session.beginTransaction();
            this.session.delete(p);
            transaction.commit();
            this.session.close();
           }
           
           // 在Hibernate 3之中根據HQL中的語句進行了修改,增加了刪除指令。按ID刪除 
           public void delete(Integer id)
           {
            String hql = "DELETE Person WHERE id=?" ;
            Query q = this.session.createQuery(hql) ;
            // 把參數設置
            q.setInteger(0,id) ;
            // 執行更新語句
            q.executeUpdate() ;
            // 進行事務處理
            this.session.beginTransaction().commit() ;
            this.session.close();
           }
          }

           
          package com.java.domain.DAO;
          import org.hibernate.Session;
          import org.hibernate.Transaction;
          import com.java.domain.HSFctory.HibernateSessionFactory;
          import com.java.domain.POJO.Person;
          public class Modify {
           
           private Session session;
           // 在構造方法之中實例化session對象
           public Modify() {
            //獲得Session:
            this.session = HibernateSessionFactory.getSession();
           }
           
           public void update(Person p) {
            //事務開始:
            Transaction transaction = this.session.beginTransaction();
            //執行事務:
               this.session.update(p);
            //事務提交
            transaction.commit();
            //關閉session:
            this.session.close();
           }
           
          }

           
          package com.java.domain.DAO;
          import java.util.Iterator;
          import java.util.List;
          import org.hibernate.Query;
          import org.hibernate.Session;
          import com.java.domain.HSFctory.HibernateSessionFactory;
          import com.java.domain.POJO.Person;
          public class QueryUpdate {
           private Session session;
           // 在構造方法之中實例化session對象
           public QueryUpdate() {
            // 獲得Session:
            this.session = HibernateSessionFactory.getSession();
           }
           // 按ID查詢
           @SuppressWarnings("unchecked")
           public Person queryById(Integer id) {
            Person p = null;
            //Person的 p要大寫。因為Person類是大寫開頭。
            String hsql = "from Person as p where p.id=?";
            Query q = this.session.createQuery(hsql);
            q.setInteger(0, id);
            List list = q.list();
            Iterator iter = list.iterator();
            while (iter.hasNext()) {
             p = (Person) iter.next();
            }
            return p;
           }
           // 查詢全部數據,寫HQL
           @SuppressWarnings("unchecked")
           public List queryAll() {
            List list = null;
            String hql = "FROM Person as p";
            Query q = this.session.createQuery(hql);
            list = q.list();
            return list;
           }
           // 模糊查詢,按名稱模糊查詢:
           @SuppressWarnings("unchecked")
           public List queryByLike(String cond) {
            List list = null;
            String hql = "FROM Person as p WHERE p.name like ?";
            Query q = this.session.createQuery(hql);
            q.setString(0, "%" + cond + "%");
            list = q.list();
            return list;
           }
          }

          測試類
          package com.java.domain.test;
          import java.util.Iterator;
          import java.util.List;
          import com.java.domain.DAO.Insert;
          import com.java.domain.DAO.Modify;
          import com.java.domain.DAO.QueryUpdate;
          import com.java.domain.POJO.Person;
          public class TestPojo {
           /**
            * @param args
            */
           public static void main(String[] args) {
            // TODO Auto-generated method stub
            
            Person p = new Person();
            Modify mod = new Modify();
            Insert it = new Insert();
            
          //  p.setId(2);
          //  p.setName("周ff23s斌");
          //  p.setPassword("bbbbbbb");
          //  p.setSex("女");
          //  p.setEmail("bbbb.@gmail.com");
          //  it.insert(p);
          //  
          //  
          //  it.update(p);
            QueryUpdate qud = new QueryUpdate();
          //  Delete dl = new Delete();
          //  Person ps = qud.queryById(2);
          //  System.out.println(ps.getName());
          //  dl.delete(3);
            
          //  List list = qud.queryAll();
          //  Iterator<Person> iter = list.iterator();
          //  while (iter.hasNext()) {
          //   Person person = (Person) iter.next();
          //   System.out.println(person.getName());
          //   System.out.println(person.getId());
          //  }
            
            List list = qud.queryByLike("v");
            Iterator<Person> iter = list.iterator();
            while (iter.hasNext()) {
             Person person = (Person) iter.next();
             System.out.println(person.getName());
            }
           }
          }
          使用myeclipse自動生成HibernateSessionFactory.java
          posted on 2009-10-22 18:52 艾波 閱讀(274) 評論(0)  編輯  收藏

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 赞皇县| 锡林郭勒盟| 丘北县| 闽侯县| 始兴县| 青川县| 容城县| 庆云县| 丹东市| 竹溪县| 石嘴山市| 静安区| 石阡县| 长白| 新乡市| 比如县| 石嘴山市| 大名县| 肇东市| 襄樊市| 滨州市| 中牟县| 登封市| 长垣县| 富裕县| SHOW| 威宁| 旅游| 乡城县| 清镇市| 即墨市| 建平县| 阿合奇县| 增城市| 扎鲁特旗| 大姚县| 饶阳县| 全椒县| 攀枝花市| 陈巴尔虎旗| 安康市|