实体对象的状态设计

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

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

<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值