碎片化 | 第四阶段-53-hibernate持久化session问题解决-视频

视频内容

如清晰度低,可转PC网页观看高清版本:

http://v.qq.com/x/page/h0568t95mz4.html

Hibernate特性

延迟加载

做一些查询数据操作时,有一些API方法具有延迟的机制,即:我们使用API去操作查询数据,此时并没有调用我们的sql语句,而是在使用对象的时候,才去调用sql加载数据

session.get方法//无延迟加载特性
query.list()//无延迟加载特性
session.load方法//具有延迟加载特性
query.iterate()//具有延迟加载特性

问题(并发业务):

我调用了sql语句,查询出数据,在赋值界面,.....no session

问题流程:请求->filter控制器->Action->DAO(关闭session)->result->jsp

解决:

1:将数据放到缓存

    请求->filter控制器->Action->DAO(关闭session)->result->jsp(缓存)

2:Spring中解决,可以通过拦截器、AOP等处理,通过opensessioninviewfilter组件(web.xml),可以处理session资源、集中处理

解决流程:
    请求->filter控制器->Action->DAO(不关session)->result->jsp->关闭session

持久化

1:临时状态(Transient)
    new xxx()
    可以被回收站进行回收,gc


2:持久状态(Persisten)

    get/load/find/exc
    不可以被回收站进行回收

3:游离状态(Detached)

    只能有持久化状态演变而来
    evict、close、clear
    可以被回收站进行回收

缓存(性能优化)

1:一级缓存(自动开启)

在我们使用对象的时候,查询操作,会自动将数据进行缓存,生命周期和session同步
第一次查询,是通过调用sql语句查询,第二次查询,就是从缓存中取值

2:二级缓存

3:查询缓存

原文发布于微信公众号 - 码神联盟(lkchatspace)

原文发表时间:2017-11-03

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏北京马哥教育

Python之包管理工具快速入门

学Python最简单的方法是什么?推荐阅读:30万年薪Python开发工程师成长魔法 在Python环境中已经有很多成熟的包,可以通过安装这些包来扩展我们的程序...

30350
来自专栏EarlGrey的专栏

如何正确配置 Ubuntu 14.04 服务器?

本文将介绍在云厂商购买 Ubuntu 服务器之后,为了确保服务器的安全,开发者应该要做的一些配置。完成本文的操作之后,服务器的安全性将得到更好的保障。

1.7K30
来自专栏Python

CentOS 7 安装与卸载MySQL 5.7

https://blog.csdn.net/zyw_java/article/details/70949596

1.3K20
来自专栏我是攻城师

Storm的wordcount实战示例

21830
来自专栏LIN_ZONE

Linux各目录及每个目录的详细介绍(转载)

Linux目录和Windows目录有着很大的不同,Linux目录类似一个树,最顶层是其根目录,如下图:

15020
来自专栏Python自动化测试

接口测试实战之postman中proxy settings应用(十九)

在接口测试应用中,对于WEB产品来说,使用浏览器自带的开发工具可以很好的可以客户端与服务端之间的请求,但是对于移动产品来说这个过程变得有点复杂,虽...

93730
来自专栏应用案例

Hexo博客的安装部署及多电脑同步

Hexo安装教程很多,我这里尽可能的讲的细一些,把容易踩坑的地方以及后期多电脑同步所遇到的问题列出来,以便给自己及大家参考。本文主要讲解安装部署后源文件同步问题...

1.4K70
来自专栏问天丶天问

win10下linux系统的安装(开启)和使用

26440
来自专栏Spring相关

Git ssh 配置及使用

前言:前几天在写博客 手把手教你用Hexo + github 搭建自己博客的时候,经常需要用到一些git操作,截了好多图,于是就想干脆整理成一系列的git 教程...

11420
来自专栏云计算教程系列

如何在Ubuntu 16.04上安装和配置Postfix

Postfix是一种流行的开源邮件传输代理(MTA),可用于在Linux系统上路由和传递电子邮件。据估计,互联网上约有25%的公共邮件服务器运行Postfix。

81000

扫码关注云+社区

领取腾讯云代金券