3.7 同一个线程拿到的 session 是同一个

开发 开发工具
博主发表的文章,有的是自己原创,有的是这些年本人从网上积累的,方便大家学习。

 [[178964]]

getCurrentSession 获取当前线程的 session

如果没有就新建

如果有就使用已有的

跟 openSession 获取的 session 不一样之处:

1. 不管增删改查,都要加事务控制

2. 配置文件中要加入 current_session_context_class=thread

3. 它会在事务结束时(commit 或 rollback)自动关掉 session

  1. @Test 
  2. public void test14() { 
  3.  SessionFactory sf = new Configuration().configure().buildSessionFactory(); 
  4.  /** 
  5.  * getCurrentSession获取当前线程的session 
  6.  * 如果没有就新建 
  7.  * 如果有就使用已有的 
  8.  * 跟openSession获取的session不一样之处: 
  9.  * 1. 不管增删改查,都要加事务控制 
  10.  * 2. 配置文件中要加入current_session_context_class取值thread, jta 
  11.  * 3. 它会在事务结束时(commitrollback)自动关掉session 
  12.  */ 
  13.  Session session = sf.getCurrentSession(); 
  14.  session.beginTransaction(); 
  15.  Order o = (Order) session.get(Order.class, 1); 
  16.  System.out.println(o); 
  17.  session.getTransaction().commit(); 

 【本文是51CTO专栏作者张勇波的原创文章,转载请通过51CTO获取作者授权】

责任编辑:武晓燕 来源: 上下求索的Z先生博客
相关推荐

2009-06-09 12:38:12

NetBeanseclipse

2016-12-20 13:55:52

2019-08-20 10:24:39

HTTPSSSHLinux

2024-09-05 16:01:55

2021-08-16 20:48:34

嵌入式单片机信息

2022-08-11 16:01:26

勒索软件网络攻击

2023-09-13 13:05:01

Java项目

2021-05-06 21:49:56

索引扫描次序

2015-10-16 13:41:52

程序对象设计

2024-04-28 18:31:03

2022-07-26 00:00:02

TCPUDPMAC

2019-01-28 09:43:21

IP地址子网掩码

2017-08-17 10:53:10

Google代码仓库

2024-03-18 08:21:06

TCPUDP协议

2015-11-12 15:14:48

ZD至顶网CIO与应用

2024-03-05 10:07:22

TCPUDP协议

2019-07-09 14:42:17

SQLexplain索引

2021-04-08 14:51:20

Python编码语言

2021-06-15 20:56:39

Python正则表达式

2016-12-29 11:18:26

前缀后缀C代码
点赞
收藏

51CTO技术栈公众号