一、hibernate的三种状态
1.瞬时状态(transient)-- 没有持久化的标识(OID),没有被纳入到session的管理
2.持久状态(persisent)-- 已经有持久化标识(OID),而且被纳入到session管理
3.游离状态/离线状态/托管状态 (detached)-- 已经有持久化标识(OID),但是没有被纳入到session管理
二、使对象持久化
Save(),update(),get(),load()
三、装载对象(get/load)
Get() 如果查询不到对象,会返回null
Load() 如果查询不到对象,会返回空指针异常
Get去查询对象的时候,迅速的去查询,如果没有就返回null,
Load去查询数据的时候,会通过懒加载的方式去查询,查询不到就报异常
四、查询
(1)执行查询
Get()
Load()
Hql查询(掌握)
Hql查询需要注意的地方
A、在hql语句中不能出现*
B、在hql语句中是区分大小写的
(2)过滤查询(了解)
测试
(3)条件查询
(4)使用原生的sql查询
五、修改持久对象
Delete()
六、修改托管对象
Update() save()
七、删除持久对象
Delete()
八、Session刷新
Flush()让session缓存中的数据库强行和数据库的数据同步。
Tr.commit() 底层实现两部操作1、flush(), 2、操作数据到数据库
九、传播持久化
级联操作