package cn.itcast.utils;

import java.sql.Connection;
import java.sql.SQLException; import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.cfg.Configuration;
import org.hibernate.jdbc.Work; public class HibernateUtils { private static Configuration cfg;
private static SessionFactory sessionFactory;
private static ThreadLocal<Session> threadLocal; static {
cfg = new Configuration();//一个加载器
cfg.configure();//加载默认位置核心配置文件
sessionFactory = cfg.buildSessionFactory();//一个session工厂
threadLocal=new ThreadLocal<Session>();
} public static Session getSession() { Session session=threadLocal.get();
if(session==null) { session = sessionFactory.openSession();//创建session
threadLocal.set(session);
session=threadLocal.get();
}
return session;
} public static void main(String[] args) {
Session session = getSession();
session.doWork(new Work() { @Override
public void execute(Connection con) throws SQLException {
// TODO Auto-generated method stub
System.out.println(con); }});
}
}

Hibernate 提供session的工具类HibernateUtils的更多相关文章

  1. JDK提供的并发工具类

    1.CountDownLatch await(),进入等待的状态 countDown(),计数器减一 应用场景:启动三个线程计算,需要对结果进行累加. /** * * CountDownLatch D ...

  2. Spring中提供的集合工具类util CollectionUtils

    转自:https://blog.csdn.net/fangwenzheng88/article/details/78457850 CollectionUtils类 /* * Copyright 200 ...

  3. java并发学习--第七章 JDK提供的线程工具类

    一.ThreadLocal ThreadLocal类用于隔离多线程中使用的对象,为ThreadLocal类中传递的泛型就是要隔离的对象,简单的来说:如果我们在主线程创建了一个对象,并且需要给下面的多线 ...

  4. javaweb常用工具类及配置文件备份

    Javaweb常用工具类及配置文件备份   做一个代码备份,以后常用到的. hibernate工具类备份 package com.dly.service; /*  * hibernate获取sessi ...

  5. 【SSH三大框架】Hibernate基础第二篇:编写HibernateUtil工具类优化性能

    相对于上一篇中的代码编写HibernateUtil类以提高程序的执行速度 首先,仍然要写一个javabean(User.java): package cn.itcast.hibernate.domai ...

  6. hibernate hql where语句拼接工具类

    package com.zhaoshijie.tree.other; /** * hibernate HQL WHERE语句工具类 * * @author 赵士杰 * */public class H ...

  7. Spring 的优秀工具类盘点

    文件资源操作 文件资源的操作是应用程序中常见的功能,如当上传一个文件后将其保存在特定目录下,从指定地址加载一个配置文件等等.我们一般使用 JDK 的 I/O 处理类完成这些操作,但对于一般的应用程序来 ...

  8. 2015第30周三Spring常用工具类

    文件资源操作 文件资源的操作是应用程序中常见的功能,如当上传一个文件后将其保存在特定目录下,从指定地址加载一个配置文件等等.我们一般使用 JDK 的 I/O 处理类完成这些操作,但对于一般的应用程序来 ...

  9. Spring 的优秀工具类盘点---转

    第 1 部分: 文件资源操作和 Web 相关工具类 http://www.ibm.com/developerworks/cn/java/j-lo-spring-utils1/ 文件资源操作 文件资源的 ...

随机推荐

  1. The Falling Leaves UVA - 699

    题目链接:https://vjudge.net/problem/UVA-699 题目大意:给一颗二叉树,每个结点都有一个水平位置 :左子节点在它左边的1个单位,右子结点在它右边1个单位.从左向右输出每 ...

  2. Java基础11-数组

    1.使用数组步骤: (1)声明数组 int[] a; (2)分配空间 a=new int[5]; (3)赋值 a[0]=1;  int类型数组如果没有赋值,默认值为0,String类型数组默认为nul ...

  3. VB.NET中的模块

    在C#中有“静态类”的概念,自然里边全部的方法都是静态的.这意味着你可以直接通过"类名.方法名"去调用(例如System的Math类就是典型).在VB.NET中,没有“静态类”的概 ...

  4. 【转】android ViewPager,ViewFlipper,ViewFlow实现左右滑动

    转自:http://blog.csdn.net/zhouyuanjing/article/details/8290454 开篇 首页只是作为ViewPager,ViewFlipper,ViewFlow ...

  5. Spring课程 Spring入门篇 3-1 Spring bean装配(上)之bean的配置项及作用域

    课程链接: 本节主要讲了四大块 1 bean的作用域 2 bean作用域代码演练 3 单例 多例应用场景 4 bean的配置项(不重要) 1 bean的作用域 1.1 singleton :单例 1. ...

  6. XHML教会我的一些东西-5

    这是写好之后的主页代码. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http: ...

  7. css随堂笔记(二)

    css   sub注释 注释不能嵌套 sub生成结构代码快捷 复合选择器 1.后代选择器 语法:选择器1 选择器2 选择器3  { 属性名:属性值 } 2.子代选择器 子代选择器语法: 选择器1> ...

  8. Odoo (OpenERP/TinyERP)-10.0 (Debian 8)

    平台: Ubuntu 类型: 虚拟机镜像 软件包: odoo-10.0 commercial erp odoo open source openerp tinyerp 服务优惠价: 按服务商许可协议 ...

  9. Azure 媒体服务换新锁,更安全更方便,新钥匙请收好!

    不知道有多少人已经把家里的门锁换成了数字化的指纹锁?沿用了几百上千年的传统门锁,在技术的帮助下无疑变得更方便,不用带钥匙,还能远程控制和操作,最重要的是,终于不用担心「衣果(luǒ)着」出门扔垃圾,风 ...

  10. check_mk检测插件 - raid监控

    mk_raidstatus python版本 #!/usr/bin/env python # -*- encoding: utf-8; py-indent-offset: 4 -*- import s ...