zoukankan      html  css  js  c++  java
  • Hibernate对象状态

    对象状态

      瞬时(transient)

        自己new出来的对象,数据库没有记录与之对应,与session也没有关联

      持久(persistent)

        数据库中有记录与之对应,当前与session有关联,相关的session未关闭,事务未提交

        持久对象如果发生改变,Hibernate能够检测到,事务提交的时候会将改变后的数据提交给数据库

      脱管(detached,也有翻译成游离)

        数据库有记录与之对应,但没有与session关联,托管对象的改变Hibernate无法检测到


    使用场景

      对瞬时对象进行保存报错

      对脱管对象进行更新操作

      如果不清楚是瞬时还是脱管的,就执行saveOrUpdate或merge方法,由Hibernate判断是更新还是插入

        如果调用saveOrUpdate,那么对象会变成持久的,

        如果调用的是merge,那么对象还是脱管的

        id中可以设置unsaveed-value来决定id是什么值就是瞬时态

  • 相关阅读:
    etcd的原理分析
    (转)Linux sort命令
    随机森林
    python 类的定义和继承
    python random
    Spark源码阅读(1): Stage划分
    Mac 上安装MySQL
    Python 删除 数组
    在循环中将多列数组组合成大数组
    准确率 召回率
  • 原文地址:https://www.cnblogs.com/sherrykid/p/4575687.html
Copyright © 2011-2022 走看看