1.持久化类的编写规则
2.主键的分类
1.自然主键 :利用表中的一个字段
2.代理主键 :本身不是表中必须的字段
--使用还是比较推荐代理主键,一旦主键参与到业务逻辑层,可能要修改源码
-- 好的程序满足OCP原则 ,对程序的扩展OPen,对源码的修改close的
3.主键的生成策略
1.主键的开发一般不允许用户手动设置主键,一般主键交给数据库,手动写程序设置,在Bibernate为了减少程序的编写,提供了很多种主键的生成策略。
---icrement :自动增长机制,适用于short,int,long类型的主键
---sequence:适用于short,int,long类型的主键,试用oracle
--indetity:适用于short,int,long类型的主键,试用Mysql
---uuid:试用于字符串类型的主键,使用hibernate中的随机方式生成字符串主键。
---native:本地策略,可以在indetity和sequence之间自动切换
---assigned:放弃外键的管理,通过手动编写程序或者用户自己设置。
---foreign:外部的,一对一的一种关系映射的情况。
4.持久态,瞬时态,托管态
1.持久态:持久化对象就是已经被保存进数据库的实体对象,并且这个实体对象现在还处于Hibernate的缓存管理之中。这是对该实体对象的任何修改,都会在清理缓存时同步到数据库中.
2.瞬时态:当我们通过Java的new关键字来生成一个实体对象时,这时这个实体对象就处于自由状态。
3.托管态:当一个持久化对象,脱离开Hibernate的缓存管理后,它就处于游离状态,游离对象和自由对象的最大区别在于,游离对象在数据库中可能还存在一条与它对应的记录,只是现在这个游离对象脱离了Hibernate的缓存管理,而自由对象不会在数据库中出现与它对应的数据记录。

5.一级缓存
1.快照区:当进行读取的时候,会将其保存到快照区,当对这个对象修改的时候会在缓存区和快照区的进行对比,如果不一样则会对数据库发送修改指令。

6.事务
1.事务:也就是指逻辑上的一组操作要么全部成功,要么全部失败。
事务的特性:
1.原子性:代表事务不可分割
2.一致性:代表事务执行的前后,数据的完整性保持一致。
3.隔离性:代表一个事务执行的过程中,不应该受到其他事务的干扰。
4.持久性:代表事务执行完成后,数据就持久到数据库中。

2.设置隔离级别
<property name="hibernate.connection.isolation">4</property>

6.其他API
Query:用于接收HQL,查询多个对象


