博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hibernate工具类
阅读量:6999 次
发布时间:2019-06-27

本文共 4332 字,大约阅读时间需要 14 分钟。

hot3.png

package util;import java.util.ArrayList;import java.util.List;import org.hibernate.Query;import org.hibernate.Session;import org.hibernate.SessionFactory;import org.hibernate.Transaction;import org.hibernate.cfg.Configuration;import org.hibernate.service.ServiceRegistry;import org.hibernate.service.ServiceRegistryBuilder;import entity.UserInfo;public class HibernateUtil{  private static SessionFactory sessionFactory;   /** * @return 获取会话工厂 */  public static SessionFactory getSessionFactory()  {    //第一步:读取Hibernate的配置文件  hibernamte.cfg.xml文件    Configuration con=new Configuration().configure();    //第二步:创建服务注册构建器对象,通过配置对象中加载所有的配置信息    ServiceRegistryBuilder regbulider=new ServiceRegistryBuilder().applySettings(con.getProperties());    //创建注册服务    ServiceRegistry reg=regbulider.buildServiceRegistry();    //第三步:创建会话工厂    SessionFactory sessionFactory=con.buildSessionFactory(reg);    return sessionFactory;  }   /** * @return 获取会话对象 */  public static Session getSession()  {     return getSessionFactory().openSession();  }    /** * @param obj 添加数据 * @return */  public static boolean add(Object obj)  {    Session session=null;    Transaction tran=null;    boolean result=false;    try    {        session=getSession();        tran=session.beginTransaction();        session.save(obj);        tran.commit();        result=true;    }    catch (Exception e)    {       if(tran!=null)       {           //事物回滚           tran.rollback();       }    }    finally    {        if(session!=null)        {            //关闭session            session.close();        }    }    return result;  }    /** * @return 更新数据  * 参数为修改的主键id对象 */public static boolean update(Object object)  {        Session session=null;        Transaction tran=null;        boolean result=false;        try        {            session=getSession();            tran=session.beginTransaction();            session.update(object);            tran.commit();            result=true;        }        catch (Exception e)        {           if(tran!=null)           {               //事物回滚               tran.rollback();           }        }        finally        {            if(session!=null)            {                //关闭session                session.close();            }        }        return result;      }       /** * @param c * @param obj  查询一条数据根据主键的id号 * @return */  public static Object get(Class c,int obj)  {        Session session=null;        Object object=null;        try        {            session=getSession();            object=session.get(c,obj);        }        catch (Exception e)        {        }        finally        {            if(session!=null)            {                //关闭session                session.close();            }        }        return object;  }  /** * @param obj * @return 删除数据 */public static boolean delete(Object obj)  {        Session session=null;        Transaction tran=null;        boolean result=false;        try        {            session=getSession();            tran=session.beginTransaction();            session.delete(obj);            tran.commit();            result=true;        }        catch (Exception e)        {           if(tran!=null)           {               //事物回滚               tran.rollback();           }        }        finally        {            if(session!=null)            {                //关闭session                session.close();            }        }        return result;  }  /** * @param 
查询多条记录 * @param sql sql语句 * @param param 参数数组 * @return */ @SuppressWarnings("unchecked")public static
List
query(String sql,String[] param) { List
list=new ArrayList
(); Session session=null; try { session=getSession(); Query query=session.createQuery(sql); if(param!=null) { for(int i=0;i
* @param sql * @param param * @param page * @param size * @return 实现分页查询 */@SuppressWarnings("unchecked")public static
List
queryByPage(String sql,String[] param,int page,int size) { List
list=new ArrayList
(); Session session=null; try { session=getSession(); Query query=session.createQuery(sql); if(param!=null) { for(int i=0;i

 

转载于:https://my.oschina.net/zhangjie9142/blog/495183

你可能感兴趣的文章
一文读懂链路追踪
查看>>
防抖和节流
查看>>
声网 Agora SDK 使用体验征文大赛
查看>>
写在 D2Admin 开源一个月之后
查看>>
JVM - 引用
查看>>
程序员欲跳槽阿里,却担心阿里加班太严重:网友:你先进去再说
查看>>
CSS @规则
查看>>
搭建hexo博客给公众号制作留言功能
查看>>
有胆就来测试 测完EtcGame让你惊喜!
查看>>
比特币前首席开发人员:LN可能还需要18个月
查看>>
C语言常被搞错的运算符优先级
查看>>
从零构建 Spark-机器学习 电影推荐系统(一) - 概述
查看>>
Xcode 上使用Reveal调试界面
查看>>
浅析如何通过 PHP 类的反射来实现依赖注入
查看>>
(一)Java B2B2C多用户商城 springcloud架构:Spring Cloud简介
查看>>
Unity(预设体)
查看>>
Grafana、elasticsearch、kafka、logstash和pinpoint结合
查看>>
使用jad反编译整个jar包
查看>>
Linux服务器安全策略
查看>>
php5类的使用_无需整理
查看>>