总结session常用的方法

session常用方法:
       get方法 在get时发出sql语句 此时对象为持久态 在缓存中
       load方法 在load时候产生代理对象 但是当访问属性时才发出sql语句 (延迟加载) 此时对象为持久态 在缓存中
       evict方法 清除缓存中的内存对象 被evict的对象 下次请求相同oid的对象时 会重新发出sql语句
                 load方式加载的对象 被evict后 已经与当前对象失联 不能再操作其属性 否则报错could not initialize proxy - no Session
                 get方式加载的对象 因为在get时候就已经发出sql语句 所以可以操作其普通属性
                 也就是说evict的对象已经脱离了session处于游离状态
       clear方法 清除session缓存中所有的对象 也就是说所有的对象都是游离状态
       merge方法 产生一个相同oid的对象 持久化对象 因为有缓存就是自己 瞬时态对象就是复制一个就不是自己因为没有缓存
                 如果是离线状态不能merge
       flush方法 将session缓存中的对象 发出sql语句到数据库
       save方法  插入一条记录到数据库 有返回值 就是id 因为调用方法就返回id 所以马上会生成sql语句
       persist方法 不会立即插入 因为不用生成id返回 等flush后才插入
       refresh方法 重新发出一个sql语句去刷新对象
posted @ 2015-12-20 20:36  饺子吃遍天  阅读(173)  评论(0编辑  收藏  举报