zoukankan      html  css  js  c++  java
  • hibernate 创建工厂类

    package cn.hibernate;
    
    import org.hibernate.SessionFactory;
    import org.hibernate.cfg.Configuration;
    
    /**
     * 创建一个工厂类 用于创建SessionFactory唯一的一个
     */
    public class SessionFactoryUtils {
        private static SessionFactory sessionFactory;
        // 在静态的代码块中创建这个对象
        static {
            // 1:创建Configuration对象,用于读取hibernate.cfg.xml文件
            Configuration config = new Configuration();
            // 默认读取hibernte.cfg.xml
            config.configure();
            // 2:创建SessionFactory对象
            sessionFactory = config.buildSessionFactory();
        }
        //3:提供一个静态的方法-返回SessionFactory的实例
        public static SessionFactory getSessionFatory(){
            return sessionFactory;
        }
    }
    
    步4:测试是否连接数据库成功 – 获取 Connection对象
        @Test
        public void test1() {
            // 1:获取 SessionFactory
            SessionFactory sf = SessionFactoryUtils.getSessionFatory();
            // 打开一个新的连接会话
            Session session = sf.openSession();//
            // 通过doWork获取一个COnnection,则所有在execute里面执行的方法都被Session控制
            session.doWork(new Work() {
                @Override
                public void execute(Connection connection) throws SQLException {
                    System.err.println("连接是:" + connection);
                }
            });
            session.close();
        }

    package cn.hibernate;

     

    import org.hibernate.SessionFactory;

    import org.hibernate.cfg.Configuration;

     

    /**

     * 创建一个工厂类用于创建SessionFactory唯一的一个

     */

    publicclass SessionFactoryUtils {

        privatestatic SessionFactory sessionFactory;

        // 在静态的代码块中创建这个对象

        static {

             // 1:创建Configuration对象,用于读取hibernate.cfg.xml文件

             Configuration config = new Configuration();

             // 默认读取hibernte.cfg.xml

             config.configure();

             // 2:创建SessionFactory对象

             sessionFactory = config.buildSessionFactory();

        }

        //3:提供一个静态的方法-返回SessionFactory的实例

        publicstatic SessionFactory getSessionFatory(){

             returnsessionFactory;

        }

    }

     

    4:测试是否连接数据库成功 获取 Connection对象

        @Test

        publicvoid test1() {

             // 1:获取 SessionFactory

             SessionFactory sf = SessionFactoryUtils.getSessionFatory();

             // 打开一个新的连接会话

             Session session = sf.openSession();//

             // 通过doWork获取一个COnnection,则所有在execute里面执行的方法都被Session控制

             session.doWork(new Work() {

                 @Override

                 publicvoid execute(Connection connection) throws SQLException {

                      System.err.println("连接是:" + connection);

                 }

             });

             session.close();

        }

     

  • 相关阅读:
    PHP读取excel中地址实现多文件下载
    PHP中域名绑定
    js生成word中图片处理
    Mysql查询不为null值
    Specified key was too long max key length is 1000 bytes
    无法向Windows服务器复制粘贴文件
    Sql Server Configuration Manager 网络配置为空,没有实例
    The first one
    前端基本知识 防抖、节流,compose 函数,apply,bind,call
    写一个闭包 ,每次调用都加1
  • 原文地址:https://www.cnblogs.com/fujilong/p/5451098.html
Copyright © 2011-2022 走看看