封装Hibernate的Session操作和增删查改的工具类
来源:互联网 发布:手机淘宝比价软件 编辑:程序博客网 时间:2024/06/05 15:01
封装Session对象的操作
public class HFUtil { //创建一个全局的SessionFactory对象 private static SessionFactory sf=null; //定义一个线程的局部变量 这个变量用于唯一的标识一个线程 private static ThreadLocal<Session> threadLocal=new ThreadLocal<>(); static { sf=new Configuration().configure().buildSessionFactory(); } //获取session public static Session getSession() { //判断当前线程是否拥有session Session session=threadLocal.get(); if(null==session) { session=sf.openSession(); threadLocal.set(session); } //session.beginTransaction(); return session; } //关闭 public static void colse() { //判断当前线程是否拥有session Session session=threadLocal.get(); if(null!=session) { //session.getTransaction().commit(); session.close(); } } private HFUtil() { // TODO Auto-generated constructor stub }}
如果想代码更简洁,可以把session的事务开启和提交也进行封装。
session.beginTransaction();
session.getTransaction().commit();
封装增删查改工具类
public class HibernateUtil { private HibernateUtil() { } //增 public static void insert(Object object) { Session session=HFUtil.getSession(); session.beginTransaction(); session.save(object); session.getTransaction().commit(); HFUtil.colse(); } //删 public static void delete(Object object) { Session session=HFUtil.getSession(); session.beginTransaction(); session.delete(object); session.beginTransaction(); HFUtil.colse(); } //改 public static void update(Object object) { Session session =HFUtil.getSession(); session.beginTransaction(); session.update(object); session.beginTransaction(); HFUtil.colse(); } //查 public static <T> T select(int id ,Class clazz) { Session session=HFUtil.getSession(); T t=(T) session.get(clazz,id); HFUtil.colse(); return t; }}
阅读全文
1 0
- 封装Hibernate的Session操作和增删查改的工具类
- Hibernate工具类获取Session对象、以及简单的增删改查操作
- SqlHelper工具类封装了对数据库的增删改查操作
- Hibernate的手动基本配置和DAO类增删改查方法的封装
- Hibernate的手动基本配置和DAO类增删改查方法的封装
- Hibernate之Session增删改查操作
- HibernateUtil工具 高级本地线程的Session封装 高级增删查改及分页实现
- 对Properties文件的增删改查操作工具类
- Hibernate对数据库增删查改的封装
- spring入门(11)-spring与hibernate整合完成增删改查的操作(封装HibernateTemplate模版类对象)
- spring入门(11)-spring与hibernate整合完成增删改查的操作(封装HibernateTemplate模版类对象)
- spring入门-spring与hibernate整合完成增删改查的操作(封装HibernateTemplate模版类对象)
- Hibernate类的增删改查
- Hibernate的增删改查
- Hibernate的增删改查
- Hibernate的增删查改
- Hibernate的增删改查
- Hibernate 的增删改查
- 传感器
- Spring Cloud开发注意事项
- 神经网络与深度学习(8)
- [NOIP2017模拟]构造
- 5. Longest Palindromic Substring(求最长回文子字符串)
- 封装Hibernate的Session操作和增删查改的工具类
- tomcat启动和停止时java.net.ConnectException:Connection refused:connect
- 如何在64位的Win10系统下安装.NET Framework 3.0
- 滴滴一面面经
- jQuery的属性与样式
- python-深拷贝和浅拷贝
- android AP侧通过sensor_class挂载sensor的一种方案
- Java解析网络数(Json)运用CloseableHttpClient
- 【Machine Learning】笔记:Transfer Learning