Hibernate 开发指南 学习笔记

来源:互联网 发布:极路由隐藏网络 编辑:程序博客网 时间:2024/06/05 09:06
  • 主键生成策略
    • hilo
    • sehilo
    • uuid 通用统一识别码
      • 16字节
      • ID是表独立和库独立的
      • 适用于插入并发要求高的系统
  • 基础文件
    • POJO
    • *.hbm.xml(内容:表属性和字段属性)
    • hibernate.cfg.xml
  • 构建Hibernate基础代码的方式
    • 手工
    • 数据库导出(荐)
    • JAVA代码生成映射文件
      • XDoclet
      • Annotation
  • mini-web中采用了注解的方式产生了最少的配置文件
  • 运行期:Config,Session,POJO,Action
  • Session
    • Save
    • Flush 在事务结束和Session关闭时会自动Flush
    • Find
  • Discriminator 多态支持
  • 数据检索
    • Criteria
    • HQL
    • SQL
  • 数据关联
    • one-to-one
    • one-to-many
      • cascade VS inverse
    • 双向一对多关系(☺主控方:many-to-one 受控方:one-to-many)
    • many-to-many
  • 数据访问
    • PO: 纳入Hibernate管理框架的VO,应该尽量避免传入其他层使用
    • VO = POJO
    • unsaved-value
    • lazy-loading 只有在真正需要的时候才真正执行数据加载的配置
    • 写POJO的时候做集合属性应该用Collection接口来声明而不是JDK的实现类。因为hibernate对Collection接口有自己的实现。
  • 事务管理 hibernate本身不具备事务管理机制。只是简单的使用JTA和JDBC的事务机制。
    • 悲观锁 主要利用DB的数据库锁机制
    • 乐观锁 hibernate框架实现的锁机制。思想:版本号 因此可能导致脏数据
  • 脏数据 物理上临时存在过但在逻辑上不存在的数据。
  • 分页
  • Cache
    • 第一层 使用Session
    • 第二层 ECache
  • Session
    • SessionFactory是线程安全的
    • Session不是线程安全的

 

    原创粉丝点击