封装Hibernate对数据库的操作,包括: 添加,删除,修改,加载,查询,分页查询,命名查询

  1. package org.lc.hibernate;  
  2. import java.io.Serializable;  
  3. import java.util.List;  
  4. import org.hibernate.HibernateException;  
  5. import org.hibernate.Query;  
  6. import org.hibernate.Session;  
  7. import org.hibernate.Transaction;  
  8. import org.lc.fatory.HibernateSessionFactory;  
  9.   
  10. public class Encapsulation<Pojo>  
  11.       
  12.     public void insertObject(Pojo pojo)  
  13.      
  14.         Session session HibernateSessionFactory.getSession();  
  15.         Transaction transaction session.beginTransaction();  
  16.         try  
  17.             session.save(pojo);  
  18.             transaction.commit();  
  19.         catch (HibernateException e)  
  20.             e.printStackTrace();  
  21.             transaction.rollback();  
  22.         }finally{  
  23.             HibernateSessionFactory.closeSession();  
  24.          
  25.      
  26.       
  27.       
  28.     public void updateObject(Pojo pojo)  
  29.      
  30.         Session session HibernateSessionFactory.getSession();  
  31.         Transaction transaction session.beginTransaction();  
  32.         try  
  33.             session.update(pojo);  
  34.             transaction.commit();  
  35.         catch (HibernateException e)  
  36.             e.printStackTrace();  
  37.             transaction.rollback();  
  38.         }finally{  
  39.             HibernateSessionFactory.closeSession();  
  40.          
  41.      
  42.       
  43.     public void deleteObject(Pojo pojo)  
  44.      
  45.         Session session HibernateSessionFactory.getSession();  
  46.         Transaction transaction session.beginTransaction();  
  47.         try  
  48.             session.delete(pojo);  
  49.             transaction.commit();  
  50.         catch (HibernateException e)  
  51.             e.printStackTrace();  
  52.             transaction.rollback();  
  53.         }finally{  
  54.             HibernateSessionFactory.closeSession();  
  55.          
  56.      
  57.       
  58.       
  59.     public Pojo loadObject(Class<Pojo> clazz, Serializable id)  
  60.      
  61.         Session session HibernateSessionFactory.getSession();  
  62.         Transaction transaction session.beginTransaction();  
  63.         try  
  64.             Pojo (Pojo) session.load(clazz, id);  
  65.             transaction.commit();  
  66.             return p;  
  67.         catch (HibernateException e)  
  68.             e.printStackTrace();  
  69.             transaction.rollback();  
  70.          
  71.         return null;  
  72.      
  73.       
  74.     public List queryObject(String hql, Object...objects)  
  75.      
  76.         Session session HibernateSessionFactory.getSession();  
  77.         Transaction transaction session.beginTransaction();  
  78.         try  
  79.             Query query session.createQuery(hql);  
  80.             this.bindParameters(query, objects);  
  81.             List list query.list();  
  82.             transaction.commit();  
  83.               
  84.             return list;  
  85.         catch (HibernateException e)  
  86.             e.printStackTrace();  
  87.             transaction.rollback();  
  88.         }finally{  
  89.             HibernateSessionFactory.closeSession();  
  90.          
  91.         return null;  
  92.      
  93.       
  94.       
  95.     public List queryObjectPage(String hql, int curpage, int pagesize, Object...objects)  
  96.      
  97.         Session session HibernateSessionFactory.getSession();  
  98.         Transaction transaction session.beginTransaction();  
  99.         try  
  100.             Query query session.createQuery(hql);  
  101.             this.bindParameters(query, objects);  
  102.           
  103.             query.setFirstResult((curpage 1) pagesize);  
  104.             query.setMaxResults(pagesize);  
  105.             List list query.list();  
  106.           
  107.             transaction.commit();  
  108.             return list;  
  109.         catch (HibernateException e)  
  110.             e.printStackTrace();  
  111.             transaction.rollback();  
  112.         }finally{  
  113.             HibernateSessionFactory.closeSession();  
  114.          
  115.         return null;  
  116.      
  117.       
  118.       
  119.     public Integer getPageSize(String hql, Object...objects)  
  120.      
  121.         Session session HibernateSessionFactory.getSession();  
  122.         Transaction transaction session.beginTransaction();  
  123.         try  
  124.             Query query session.createQuery(hql);  
  125.             this.bindParameters(query, objects);  
  126.             Object object query.uniqueResult();  
  127.             transaction.commit();  
  128.               
  129.             return (Integer) object;  
  130.         catch (HibernateException e)  
  131.             e.printStackTrace();  
  132.             transaction.rollback();  
  133.         }finally{  
  134.             HibernateSessionFactory.closeSession();  
  135.          
  136.         return 0;  
  137.      
  138.       
  139.       
  140.     public List namedQuery(String namedHql, Object...objects)  
  141.      
  142.         Session session HibernateSessionFactory.getSession();  
  143.         Transaction transaction session.beginTransaction();  
  144.         try  
  145.             Query query session.getNamedQuery(namedHql);  
  146.             this.bindParameters(query, objects);  
  147.             List list query.list();  
  148.             transaction.commit();  
  149.             return list;  
  150.         catch (HibernateException e)  
  151.             e.printStackTrace();  
  152.             transaction.rollback();  
  153.         }finally{  
  154.             HibernateSessionFactory.closeSession();  
  155.          
  156.         return null;  
  157.      
  158.       
  159.     protected void bindParameters(Query query, Object...objects)  
  160.      
  161.         if(objects == null) return;  
  162.         int 0;  
  163.         for(Object objects)  
  164.          
  165.             query.setParameter(i ++, o);  
  166.          
  167.      
  168. }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值