zoukankan      html  css  js  c++  java
  • 实体对象的状态设计

    s="2" cols="20" id="Editor_Edit_EditorBody" style="height:500px;100%;">

    1实体对象类图:
    Entity 状态属性类图.jpg

    2: 实体对象状态图:
    Entity 对象状态转换图.jpg

    3:描述

    对于需要持久化的实体对象,在它的生命周期中可处于以下4个状态或混合状态中。

    Ø         临时状态(isNew): 刚刚用new 语句创建,还没有被持久化 (isNew = true, isDirty = false, isLoaded = false, isDeleted=false)

    Ø         “脏”状态(isDirty:

    ü         编辑处于临时状态的实体对象(isNew = true, isDirty = true, isLoaded = false, isDeleted=false)

    ü         编辑处于持久化状态的实体对象(isNew = false, isDirty = true, isLoaded = false, isDeleted=false

    Ø         持久化状态(isNew=false,isDeleted=false:

    ü         Load方法加载的对象(isNew = false, isDirty = true, isLoaded = true, isDeleted=false)

    ü         把临时状态的对象通过Insert/Save/Update方法进行保存(isNew = false, isDirty = false, isLoaded = false, isDeleted=false)

    ü         把持久化状态的对象通过Save/Update方法进行保存(isNew = false, isDirty = false, isLoaded = false, isDeleted=false)

    Ø         游离状态(isDeleted:调用对象的Delete方法已经从数据库中把对应的记录移除(isDeleted=true,处于游历状态的对象是不能够再进行CRUD操作了,否则系统会抛出一个不能对游历态对象操作的异常

     

    4:  问题描述

          以上是NDO Framwork 中关于实体对象的状态设计图,希望大家帮我看看指出其中的不足。另外有一个困惑我了一下午的问题: 把一个实体对象对应的数据库记录删除后则该对象处于游离态还是出于临时状态,如果是出于临时状态的话那么游离态就没有存在的必要性,希望就这个问题听听大家的看法。

  • 相关阅读:
    将eclipse的编码设置成UTF-8
    git提交代码时报rejected
    Vue.js
    快速计算进制之间的转换
    android中canvas.drawText参数的介绍以及绘制一个文本居中的案例
    progressbar原始效果
    面试问题总结
    Android Material Design学习日志
    Android进阶之解决RecyclerView notifyItem闪屏问题
    Android TextView行间距解析
  • 原文地址:https://www.cnblogs.com/netcasewqs/p/593553.html
Copyright © 2011-2022 走看看