session 讲解

原创 2015年11月18日 21:23:44

一个Session就是个单一的工作单元。我们暂时让事情简单一些,并假设HibernateSession和数据库事务是一一对应的。为了让我们的代码从底层的事务系统中脱离出来(此例中是JDBC,但也可能是JTA),我们使用Hibernate Session中的Transaction API。

sessionFactory.getCurrentSession()是干什么的呢?首先,只要你持有SessionFactory(幸亏我们有HibernateUtil,可以随时获得),大可在任何时候、任何地点调用这个方法。getCurrentSession()方法总会返回“当前的”工作单元。记得我们在hibernate.cfg.xml中把这一配置选项调整为"thread"了吗?因此,因此,当前工作单元被绑定到当前执行我们应用程序的Java线程。但是,这并非是完全准确的,你还得考虑工作单元的生命周期范围 (scope),它何时开始,又何时结束.

Session在第一次被使用的时候,即第一次调用getCurrentSession()的时候,其生命周期就开始。然后它被Hibernate绑定到当前线程。当事务结束的时候,不管是提交还是回滚,Hibernate会自动把Session从当前线程剥离,并且关闭它。假若你再次调用getCurrentSession(),你会得到一个新的Session,并且开始一个新的工作单元。这种线程绑定(thread-bound)的编程模型(model)是使用Hibernate的最广泛的方式,因为它支持对你的代码灵活分层(事务划分可以和你的数据访问代码分离开来,在本教程的后面部分就会这么做)。  

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

cookie与session深入讲解

一篇优秀Session讲解

  • 2010-06-12 22:01
  • 18KB
  • 下载

Asp.Net Application和Session内置对象讲解

利用Application 和Session 对象分别对页面的值进行加一 首先看下页面部分的代码<!DOCTYPE html PUBLIC "-//W3C

http Cookie与Session的讲解

http 之session和cookie http://www.cnblogs.com/ForEverKissing/archive/2008/05/23/1205503.html Sessi...

一篇很透彻讲解session的文章分享一下

摘要:虽然session机制在web应用程序中被采用已经很长时间了,但是仍然有很多人不清 楚session机制的本质,以至不能正确的应用这一技术。本文将详细讨论session的工作机制 ...

WEB后台--基于Token的WEB后台登录认证机制(并讲解其他认证机制以及cookie和session机制)

继续这一个系列,WEB后台--基于Token的WEB后台登录认证机制(并讲解其他认证机制以及cookie和session机制)。每个后端不得不解决的认证问题。这篇博客会顺带讲解session和cook...

java-session和cookie重点讲解

三:Session和cookie部分 Cookie在客户端,session在服务器端,cookie的功能 需要浏览器支持。 通过request,getCookie()获取客户端提交的所有cooki...

Session 知识讲解

Session的讲解 昨天我们讲解了Cookie的原理及应用,那么我们今天来讲解一下Session。 首先我们先来说一下什么是session: 我们在使用Cookie和附加URL参数来传递上一次...

【转】更详细的 有关session和cookie介绍及应用的讲解

一、术语session   在我的经验里,session这个词被滥用的程度大概仅次于transaction,更加有趣的是transaction和session在某些语境下的含义是相同的。 ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)