• Hibernate小结


    hibernate原理:

    hibernate是持久层框架,是一个全自动的ORM框架,直接使用操作对象的方法操作数据库,简化dao层。

    hibernate流程:

    1.使用Configuration读取配置创建一个session工厂
    2.session工厂创建一个seesion对象
    3.session对象和它创建Query/Criteria都可以操作数据库
    4.Transcation 用于管理事务

    查询方式:

    HQL查询
    调用方法Query,必须写相应的HQL查询语句
    Criteria查询:
    调用方法list/iterator,直接把实体类对象放入类中,省略了查询语句。
    离线查询即不通过session创建查询对象
    原生SQL:
    总结:
    HQL语句必须写相应的HQL查询语句,而Criteria 语句直接把实体类对象放入类中,省略了查询语句。

    对象状态:

    瞬时(一个对象刚创建的时候,没有纳入session管理)
    持久化(有id,在session中,被session管理)
    游离/托管(有这个对象的存在,但不被seesion管理,不能保持同步更新)

    一对多、多对多:

    一对多(表中:使用外键。实体中:使用集合-属性方式表达)
    多对多(表中:创建一个新表包涵两个表的外键。实体中:两方都是用集合表示拥有多个对方)
    inverse:关系维护指定一方维护
    Cascade:级联操作

    缓存:

    一级缓存是Session,当Session做了一个查询操作,那么查询出的结果放到一级缓存中,如果短时间内又做了一个相同的操作,那么就会去缓存中取数据,处在一级缓存的对象永远不会过期,除非应用程序清空缓存.

    延迟(懒)加载:

    lazy(flase 表示立即加载,true 表过延迟加载)

    常用主键生成策略:

    identity(自增)
    uuid(随机字符串)
    assigned(手动)
    native(自动)

  • 相关阅读:
    DataGrid 的鼠标点击
    Menu菜单
    密码问题
    Combobox代码
    EndpointContracts
    the Differences between abstract class & interface in C#接口和抽象类的区别
    How to get MetaData on client side in WCF?如何在客户端获取WCF service的元数据
    Endpoint
    Assembly Essence 程序集深入探讨:程序集结构及部署
    EndpointBinding
  • 原文地址:https://www.cnblogs.com/fengnan/p/9609355.html
Copyright © 2020-2023  润新知