Business Request的虚实之道

Business Request的虚实之道
Business Request的概念,与http request是不同的。为避免误解,特意加上Business一词修饰。
所谓虚实是指是否将Business Request概念实例化。不做实例化的理由时处理简单;实例化则有助于处理Business Transaction以及账目模式。
一个业务上的Business Request可能包括多个Request Form,与核心业务对象对应,例如:在线订单,就包括了购买物品及其数量和折扣,支付协议和发货协议等。
对于没有实例化Business Request的情况下,在实际业务操作时,对每一个form的操作都需要一个物理的transaction来支持。
这样做的问题是,由于没有记录Business Request,直接操作业务对象,在做业务日志时只能记录操作前以及操作后的信息(既“减肥前,减肥后”);同时cross多个transaction,要支持查询到一次Business Request所有操作的信息,需要新建一个log index或者类似的手段,在业务开始时获取注册一个index,所有log操作中引用这个index,在业务结束后close该index。虽然如此,也带来的是业务上做undo以及redo操作的不便。
但是如果实例化Business Request,就很容易处理这两样操作。建立一个Business Request,同时记录所涉及的Request Form。这样做的好处是:可以很容易的记录一些额外的信息;同时可以很容易的支持approve操作(既俗说的“管帐的不管钱,管钱的不管帐”)。不过目前大部分的系统都没有处理Business Request实例化,不是所有的业务操作需要Approve,另外实例化的麻烦是Request Form会和Domain Object看起来一样,已经处理了一个log对象,再处理一个request对象总是让人多少心里有点不爽;而页面处理需要抽取出变化的properties。

(原文发在http://www.blogjava.net/AndersLin/archive/2006/09/19/70643.html,不过business action自己也没想好,就不贴在论坛上了。一直在等partech的Domain Model驱动一章,不知道什么时候能出来)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值