HibernateUtil

来源:互联网 发布:ubuntu调整分辨率命令 编辑:程序博客网 时间:2024/05/18 20:53
//刚开始学hibernate 的第一课,我就整理了我的HibernateUtil工具类

package com.uitl;

import java.util.List;

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;

import com.entity.DeptBean;

public class HibernateUtil {

private final static SessionFactory sessionFactory;
static {

    //根据hibernate.cfg.utl得到一个SessionFactory
    sessionFactory = new Configuration().configure().buildSessionFactory();
}
public static SessionFactory getSessionFactory(){
 return sessionFactory;
}
/**1、添加   2、删除  3、修改*/
public static void update(Object obj,int style){
  SessionFactory sessionFactory =HibernateUtil.getSessionFactory(); //获得session工厂
  Session session=sessionFactory.openSession(); //引用session  
  if(style==1)
     session.save(obj);//添加
  else if(style==2)
 session.delete(obj);//删除
  else if(style==3)
  session.update(obj);//修改
           session.beginTransaction().commit(); //提交事务
           session.close();
}
/**查询单个*/
public static Object queryById(Class bean ,int id) {
 SessionFactory sessionFactory =HibernateUtil.getSessionFactory(); //获得session工厂
 Session session=sessionFactory.openSession(); //引用session  
 Object obj=session.get(bean, id);
         session.beginTransaction().commit(); //提交事务
         session.close();  
         return obj;
}
/** 查询所有*/
public static List queryAll(String beanName) {
 SessionFactory sessionFactory =HibernateUtil.getSessionFactory();   //获得session工厂
 Session session=sessionFactory.openSession();      //引用session  
 List list=session.createQuery("from "+beanName+"").list();
         session.beginTransaction().commit();     //提交事务
         session.close();
         return list;    
}

}
原创粉丝点击