分享web开发知识

注册/登录|最近发布|今日推荐

主页 IT知识网页技术软件开发前端开发代码编程运营维护技术分享教程案例
当前位置:首页 > 代码编程

hibernate 常识

发布时间:2023-09-06 01:34责任编辑:苏小强关键词:暂无标签
  • 应用程序与hibernate是通过持久化类通信:

  • hibernate需要访问的属性一定要在*.hbm.xml中定义,不一定在持久化类中定义,但持久化类一定要提供该属性的set和get方法。

  • 如果持久化类里有一个属性,数据库中表没有对应字段,可以用*.hbm.xml中的formula属性做对应关系,例如下图,持久化类中有totalPrice属性,数据库表里没有




  • 4.

    5. new出来的对象在堆中,为临时态,被save后,该对象其实是加入了一个session中的map,key为这个对象的OID,其实就是多了一个对它的引用,并且在flush时会将该对象对应的条目保存到数据库,此时为持久态,当session不存在,session对

    该对象的引用没了,而数据库中还有一条记录与之对应,此时该对象处于游离态。


    6.many-to-one

    7. One-to-Many

    8.cascade



    9.inverse

    当两个表建立关系时,也就是调用多方的(many)set方法和一方的(one)add方法时,如果双方都配置inverse为false,则多方会生成两条重复的sql语句去update多方的对应条目,

    结果是访问数据库低效,所以一般在one方设置inverse为true,此时意思是由many方法来控制两个表的关联关系,也就是当many方调用set方法时,才生成一条sql语句去update多方的对应条目,

    从而建立关系,而如果one方调用add方法时,不会生成sql语句去update多方的对应条目,也就不会建立起联系。

    10.触发器会引起数据库与session缓存中的数据不一致的问题


    11.组成关系映射,就是类内部引用了其他类,这个其他类也可以做映射,需要在*.hbm.xml中使用component元素


    12.检索策略,分为类检索和关联检索(与那个类关联的类,或者说与那个类对应的条目的关联条目的检索)




    hibernate 常识

    原文地址:http://blog.51cto.com/2839840/2056887

    知识推荐

    我的编程学习网——分享web前端后端开发技术知识。 垃圾信息处理邮箱 tousu563@163.com 网站地图
    icp备案号 闽ICP备2023006418号-8 不良信息举报平台 互联网安全管理备案 Copyright 2023 www.wodecom.cn All Rights Reserved