• 实体对象的状态设计


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

  • 相关阅读:
    java-学习8
    java-学习7
    java-学习6
    html----h1-6标签
    jquery.cookie介绍和用法
    java-学习5
    java-学习4
    Eclipse里的代码光标变成一个黑色块
    java-学习3(jdk-环境配置)
    箭头函数无法使用this的解决方法
  • 原文地址:https://www.cnblogs.com/netcasewqs/p/593553.html
Copyright © 2020-2023  润新知