重新发贴,关于一个问题的J2EE设计
awk 2003-09-12 04:53:10 背景:
为公众(单位)提供一系列的网上服务。公众或单位可以获取一个服务编号,然后根据这个编号办理各种服务的具体业务。
构想:
我认为这里最重要的一个概念是服务
从数据库角度来讲,我会建立一个服务内容表,来表明我提供的各种服务,包含如下主要字段:
服务编号
服务类型
客户备注(即客户以文本进行附加说明)
工作人员备注(即工作人员对客户的要求进行回复)
申请人
申请单位
.......................
接着我会建立对应的各种服务所需要的服务信息明细表,为各种服务提供具体的数据信息。
从J2EE设计的角度来讲,服务就是一个业务逻辑实体,而对于每种服务需要输入的具体数据(1条到上万条记录不等),他们不是关键业务信息,仅仅就是数据,相当于依赖值对象。某种程度上我可以做一个Core J2ee Patterns一书中所说的composite entity。
这里有一点迷惑的是,服务相当于一个业务逻辑实体,可是他所依赖的数据对象类型会根据服务的内容发生变化。在这种情况下为了实现composite entity bean,难道要让我创建一个关于服务的entity bean,然后不停的继承,去重新实现关于持久化的方法,还有就是感觉如果有N种不同实现的entity bean对应一个table有点异样?如果服务所依赖的数据都做成entity bean,开销就更大了...欢迎大家指导,讨论。