Hibernate
来源:互联网 发布:上海行知教育教学网点 编辑:程序博客网 时间:2024/06/07 07:28
为什么要用hibernate:
1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。
2. Hibernate是一个基于JDBC的主流持久化框架,是一个优秀的ORM实现。很大程度的简化DAO层的编码工作
3. hibernate使用Java反射机制,而不是字节码增强程序来实现透明性。
4. hibernate的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。它支持各种关系数据库,从一对一到多对多的各种复杂关系。
持久化:数据模型(内存)《--》存储模型(持久化设备),在Java中说持久化,通常指的是使用SQL将数据存储在关系型数据库中。
ORM是持久化的一种解决方案,主要是把对象模型和关系型数据库关系模型映射起来,并且使用元数据对这些映射进行描述。(它的实现思想就是将关系数据库中表的数据映射成为对象)
Hibernate的工作7个流程:
1. 读取并解析配置文件2. 创建SessionFactory
3. 打开Session
4. 开始一个事务
5. 持久化操作
6. 提交事务
7. 关闭Session
Hibernate缓存的作用:
Hibernate是一个持久层框架,经常访问物理数据库,为了降低应用程序对物理数据源访问的频次,从而提高应用程序的运行性能。缓存内的数据是对物理数据源中的数据的复制,应用程序在运行时从缓存读写数据,在特定的时刻或事件会同步缓存和物理数据源的数据
Hibernate缓存分类:
Hibernate缓存包括两大类:Hibernate一级缓存和Hibernate二级缓存
1. Hibernate一级缓存又称为“Session的缓存”,它是内置的,意思就是说,只要你使用hibernate就必须使用session缓存。由于Session对象的生命周期通常对应一个数据库事务或者一个应用事务,因此它的缓存是事务范围的缓存。在第一级缓存中,持久化类的每个实例都具有唯一的OID。
2. Hibernate二级缓存又称为“SessionFactory的缓存”,由于SessionFactory对象的生命周期和应用程序的整个过程对应,因此Hibernate二级缓存是进程范围或者集群范围的缓存,有可能出现并发问题,因此需要采用适当的并发访问策略,该策略为被缓存的数据提供了事务隔离级别。第二级缓存是可选的,是一个可配置的插件,在默认情况下,SessionFactory不会启用这个插件。(分布式缓存、应用缓存)
- hibernate
- Hibernate
- Hibernate
- Hibernate
- hibernate
- hibernate
- Hibernate
- Hibernate
- Hibernate
- hibernate
- Hibernate
- Hibernate
- hibernate
- hibernate
- hibernate
- Hibernate
- Hibernate
- hibernate
- Python 日志组件学习(一)
- React Native 配置环境(iOS and Android)
- RecyclerView实现复杂布局
- 美国大学最新排名较以往变化不大 名校对语言成绩(雅思)要求更高
- scala编程实战 scala编程实战pdf 下载
- Hibernate
- shrio权限管理filterChainDefinitions过滤器配置
- 安卓使用Camera实现拍照并保存到内存卡中
- 字符串
- Xcode真机运行报错linker command failed with exit code 1 (use -v to see invocation)
- mysql replace into 用法笔记
- Java JUnit4单元测试步骤
- NavigationView获取头像点击事件
- java基础复习---->private修饰符