- 爱易网页
-
数据库教程
- Hibernate增删节查数据库之二工具类
日期:2014-05-16 浏览次数:20515 次
Hibernate增删改查数据库之二工具类
/**
* Hibernate工具类(简单型)
* 功能-完成会话工厂和会话的创建已经会话的关闭
* @author Owner
*
*/
public class HibernateUtils {
private static Transaction tran=null;
private static Session session = null;
private static SessionFactory factory=null;
/**
* static块的语句只实例化一次(单列)
*/
static{
try{
//读取hibernate.cfg.xml配置文件
Configuration cfg = new Configuration().configure();
//通过cfg对象创建会话工厂对象
factory = cfg.buildSessionFactory();
}catch(Exception e){
System.out.println("hibernate.cfg.xml not found!");
e.printStackTrace();
}
}
/**
* DESC:获取会话工厂
* @return
*/
public static SessionFactory getSessionFactory(){
return factory;
}
/**
* DESC:获取会话session对象
* @return
*/
public static Session getSession(){
session = factory.openSession();
System.out.println("-----session创建成功!");
return session;
}
/**
* DESC:关闭会话
* @param session
*/
public static void closeSession(Session session){
if(session!=null){
if(session.isOpen()){
session.close();
System.out.println("----session关闭成功!");
}
}
}
/**
* DESC-开启事务
* @return
*/
public static void openTransaction(){
Transaction tran = session.beginTransaction();
System.out.println("---事务开启成功!");
HibernateUtils.tran=tran;
}
public static void commitTransaction(){
try {
System.out.println(HibernateUtils.tran);
HibernateUtils.tran.commit();
System.out.println("--事务提交成功!");
} catch (Exception e) {
HibernateUtils.rollbackTransation();
e.printStackTrace();
}
}
public static void rollbackTransation(){
try {
HibernateUtils.tran.rollback();
System.out.println("-数据回滚成功!");
} catch (Exception e) {
System.out.println("-数据回滚失败!");
e.printStackTrace();
}
}
}
免责声明: 本文仅代表作者个人观点,与爱易网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。