博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hibernate 创建工厂类
阅读量:5933 次
发布时间:2019-06-19

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

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();

    }

 

转载于:https://www.cnblogs.com/fujilong/p/5451098.html

你可能感兴趣的文章
广平县北方计算机第一届PS设计大赛
查看>>
深入理解Java的接口和抽象类
查看>>
java与xml
查看>>
Javascript异步数据的同步处理方法
查看>>
快速排序——Java
查看>>
iis6 zencart1.39 伪静态规则
查看>>
SQL Server代理(3/12):代理警报和操作员
查看>>
基于事件驱动的DDD领域驱动设计框架分享(附源代码)
查看>>
Linux备份ifcfg-eth0文件导致的网络故障问题
查看>>
2018年尾总结——稳中成长
查看>>
行列式的乘法定理
查看>>
JFreeChart开发_用JFreeChart增强JSP报表的用户体验
查看>>
度量时间差
查看>>
MySQL 5.6为什么关闭元数据统计信息自动更新&统计信息收集源代码探索
查看>>
apache prefork模式优化错误
查看>>
jmeter高级用法例子,如何扩展自定义函数
查看>>
通过jsp请求Servlet来操作HBASE
查看>>
JS页面刷新保持数据不丢失
查看>>
清橙A1202&Bzoj2201:彩色圆环
查看>>
使用data pump工具的准备
查看>>