hibernate框架学习笔记(3)

一.hibernate中的实体创建规则

1>对象必须有oid.
2>对象中的属性,尽量使用包装类型
3>不使用final修饰类
4>提供get/set方法....

二.hibernate主键生成策略(7种)

increment: 查询最大值.再加1
identity: 主键自增.
sequence:Oracle使用的
hilo: hibernate自己实现自增算法
native: 根据所选数据库三选一
uuid: 随机字符串
assigned: 自然主键.

三.对象的三种状态

瞬时状态
没有id,没有在session缓存中.
持久化状态
有id,在session缓存中。
托管|游离状态
有id,不在session缓存中.

持久化: 持久化状态的对象,会在事务提交时,自动同步到数据库中.
我们使用hibernate的原则.就是将对象转换为持久化状态.

四.一级缓存

缓存: 为了提高效率.
一级缓存:为了提高效率.session对象中有一个可以存放对象的集合.

查询时: 第一次查询时.会将对象放入缓存.再次查询时,会返回缓存中的.不再查询数据库.

修改时: 会使用快照对比修改前和后对象的属性区别.只执行一次修改.

        



五.事务管理

1>如何配置数据库隔离级别
1 读未提交
2 读已提交
4 可重复读
8 串行化

2>指定session与当前线程绑定

                在hibernate.cfg.xml下配置

                <property name="current_session_context_class">thread</property>


六.批量查询

HQL 面向对象的语句查询
Criteria 面向对象的无语句查询
SQL 原生SQL

猜你喜欢

转载自blog.csdn.net/pbrlovejava/article/details/80212344
今日推荐