zoukankan      html  css  js  c++  java
  • (补充)06.Hibernate持久化类&持久化对象

    持久化类:就是一个Java类(JavaBean),这个类与表建立映射关系就可以成为是持久类

      持久化类 = JavaBean + xxx.hbm.xml

      编写规则:

    • 1.提供一个无参数,public访问控制符的控制器  --底层需要反射
    • 2.提供一个标识属性,映射数据表主键字段  --唯一标识OID,数据库通过主键,Java对象通过地址确定对象,持久化类通过唯一标识OID确定记录
    • 3.所有属性提供public访问控制符的get,set方法
    • 4.标识属性应尽量使用基本数据类型的包装类型。(使用long不使用int),在封装存储到数据库是空值为null

    持久化对象:持久化类实现的对象

    持久化对象的三种状态:

    • 1.瞬时态  --没有持久化标识OID,没有被纳入到Session对象管理

        获得瞬时态对象:

    User user = new User();

        瞬时态-->持久态:

    save() / saveOrUpdate();

        瞬时态-->脱管态:

    user.setId(1);
    • 2.持久态  --有持久化标识OID,被Session对象管理

        获得持久化对象:

    get() / load() ;

        持久化-->瞬时态

    delete();    //比较有争议,进入特殊的状态(删除态,Hibernate不建议使用)

        持久化-->托管态

    session.close() / evict() / clear() ;
    • 3.脱管态  --有持久化标识OID,没有被纳入Session对象管理

        获得脱管态对象:不建议直接获得脱管态对象

    User user = new User();
    user.setId(1);

        脱管态-->持久态

    update() / saveOrUpdate() / lock()

        脱管态-->瞬时态

    user.setId(null);

    注意:持久态的持久化对象具有自动更新数据库的能力!!

       Hibernate的一级缓存--->>>Session的缓存和快照

  • 相关阅读:
    如何设定Fckeditor的工具栏
    WINDOWS 8
    博弈论
    互联网协议入门
    关于“性”
    两个看似互斥矛盾的法则,在更高的法则上会达到统一
    silverlight后台加载本地图片
    REST(Representational State Transfer表述性状态转移)
    各个搜索引擎网站管理员工具地址
    OAuth
  • 原文地址:https://www.cnblogs.com/NEWHOM/p/6762950.html
Copyright © 2011-2022 走看看