首页
Web开发
Windows程序
编程语言
数据库
移动开发
系统相关
微信
其他好文
会员
首页
>
Web开发
> 详细
HttpSession与Hibernate中Session的区别
时间:
2016-08-06 15:55:12
阅读:
150
评论:
0
收藏:
0
[点我收藏+]
标签:
一、javax.servlet.http.HttpSession是一个抽象接口
它的产生:J2EE的Web程序在运行的时候,会给每一个新的访问者建立一个HttpSession,这个Session是用户身份的唯一表示。注意,是容器(Tomcat,Resin)自动创建的。
用途:存放这个用户的一些经常被用到的信息
,例如:用户名,权限。例如在购物车程序里,存放用户买的商品。
销毁:一定时间(跟容器有关)内,用户无任何动作,session自动销毁。
得到的方法:
HttpSession session = request.getSession();
常用方法setAttribute
session.setAttribute(key,value);
这样在另一个jsp
或者Servlet里,可以用
session.getAttribute(key); 得到value
类似一个Map
二、org.hibernate.Session
它是hibernate操作数据库
的一个句柄对象。它跟上面那个Session唯一的相似处就是名字有点像,其他没任何一样的地方。
一般的Hibernate程序中,Session由用户手动获取,手动关闭。
正规项目中,在业务层获取Session
Session session = HibernateSessionFactory.openSession();
然后把此session传给dao层,将数据持久化或其他的操作。
一次业务逻辑可能调用多个dao方法,例如银行
转帐,是一个先减后增的过程,所以会调用2个dao里的方法(甲帐户减,乙帐户增)。因此,可以利用业务层产生的同一个Session来做这件事
a1和a2代表帐户实体。
a1是甲的,a2是乙的。
a1.setAcount(a1.getAcount() - 1000);
a2.setAcount(a2.getAcount() + 1000);
dao.update(a1,session);
dao.update(a2,session);
Transaction tx = session.beginTransaction() ;
mit() ;
最后在业务层,将session关闭
session.close() ;
或者调用HibernateSessionFactory.closeSession(session);
最好能加上异常捕捉,之类,如产生异常,即时回滚。保证操作不出意外。
try{
…
mit
() ;
}catch(Exception e){
tx.rollback() ;
}finally{
HibernateSessionFactory.closeSession(session);
}
HttpSession与Hibernate中Session的区别
标签:
原文地址:http://www.cnblogs.com/whyhappy/p/5744000.html
踩
(
0
)
赞
(
0
)
举报
评论
一句话评论(
0
)
登录后才能评论!
分享档案
更多>
2021年07月29日 (22)
2021年07月28日 (40)
2021年07月27日 (32)
2021年07月26日 (79)
2021年07月23日 (29)
2021年07月22日 (30)
2021年07月21日 (42)
2021年07月20日 (16)
2021年07月19日 (90)
2021年07月16日 (35)
周排行
更多
36.VUE — 认识 Webpack 和 安装
2021-07-28
【PHP】上传图片翻转问题
2021-07-28
php对数字进行万。亿的转化
2021-07-28
五个 .NET 性能小贴士
2021-07-28
Three.js中显示坐标轴、平面、球体、四方体
2021-07-28
.net 5+ 知新:【1】 .Net 5 基本概念和开发环境搭建
2021-07-27
1.html,css
2021-07-27
基于Docker搭建 Php-fpm + Nginx 环境
2021-07-27
nginx + http + svn
2021-07-27
kubernets kube-proxy的代理 iptables和ipvs
2021-07-26
友情链接
兰亭集智
国之画
百度统计
站长统计
阿里云
chrome插件
新版天听网
关于我们
-
联系我们
-
留言反馈
© 2014
mamicode.com
版权所有 联系我们:gaon5@hotmail.com
迷上了代码!