zoukankan      html  css  js  c++  java
  • Hibernate使用套路,新手请进


    package cn.zhaoqinrong.MainApp; import org.apache.log4j.Logger; import org.hibernate.HibernateException; import org.hibernate.Session; import org.hibernate.SessionFactory; import org.hibernate.Transaction; import org.hibernate.cfg.Configuration; import java.io.File; public class HibTest { private Logger logger=Logger.getLogger(HibTest.class); public void firstshow(){ Configuration conf=null;//加载Hibernate的配置文件 SessionFactory sf=null;//创建session Session session=null;//session实施持久化操作的关键API Transaction tx=null;//事务控制 try { //1.创建Configuration的实例,并加载配置文件 conf=new Configuration().configure("hibernate.cfg.xml"); logger.debug("加载配置文件成功"); //获取sessionFactory工厂实例 sf=conf.buildSessionFactory(); logger.debug("创建sessionFactory实例"); //通过sessionFactory来获取session对象 session=sf.getCurrentSession();//推荐使用 /* * SessionFactory.openSession来得到的session需要手工关闭,hibernate不会对其进行管理 * SessionFactory.getcurrentSession()得到的session由hibernate进行管理,不需要手动进行关闭,事务提交后,会话会自动关闭 * 在配置文件中配置 <property name="current_session_context_class">thread</property>,将session * 与线程进行绑定 * * */ logger.debug("创建session实例"); tx= session.beginTransaction(); logger.debug("事务开启"); //2.加载配置文件 //3. } catch (HibernateException e) { e.printStackTrace(); if(tx!=null){ tx.rollback();//session会自动关闭 } } finally { //如果使用open打开的session.必须使用finally对session进行关闭 } } }
    package cn.zhaoqinrong.MainApp;

    import org.apache.log4j.Logger;
    import org.hibernate.HibernateException;
    import org.hibernate.Session;
    import org.hibernate.SessionFactory;
    import org.hibernate.Transaction;
    import org.hibernate.cfg.Configuration;

    import java.io.File;



    public class HibTest {
    private Logger logger=Logger.getLogger(HibTest.class);
    public void firstshow(){
    Configuration conf=null;//加载Hibernate的配置文件
    SessionFactory sf=null;//创建session
    Session session=null;//session实施持久化操作的关键API
    Transaction tx=null;//事务控制

    try {
    //1.创建Configuration的实例,并加载配置文件
    conf=new Configuration().configure("hibernate.cfg.xml");
    logger.debug("加载配置文件成功");
    //获取sessionFactory工厂实例
    sf=conf.buildSessionFactory();
    logger.debug("创建sessionFactory实例");
    //通过sessionFactory来获取session对象
    session=sf.getCurrentSession();//推荐使用
    /*
    * SessionFactory.openSession来得到的session需要手工关闭,hibernate不会对其进行管理
    * SessionFactory.getcurrentSession()得到的sessionhibernate进行管理,不需要手动进行关闭,事务提交后,会话会自动关闭
    * 在配置文件中配置 <property name="current_session_context_class">thread</property>,session
    * 与线程进行绑定
    *
    * */
    logger.debug("创建session实例");
    tx= session.beginTransaction();
    logger.debug("事务开启");
    //2.加载配置文件
    //3.
    } catch (HibernateException e) {
    e.printStackTrace();
    if(tx!=null){
    tx.rollback();//session会自动关闭
    }
    } finally {
    //如果使用open打开的session.必须使用finallysession进行关闭
    }
    }
    }
  • 相关阅读:
    调用Config.ini类
    winform用AForge拍照功能
    winform导出csv
    winform导出excel
    net里面using的使用
    DBNULL与null的区别
    mui app在线更新
    redux-thunk初步使用
    初步使用Web Notification 实现浏览器消息通知
    ios唤起键盘后,页面不收回导致元素错位的问题.(譬如固定在底部的自定义键盘等)
  • 原文地址:https://www.cnblogs.com/zqr99/p/7879999.html
Copyright © 2011-2022 走看看