日期:2014-05-19  浏览次数:20611 次

让用户自定义资源类型
有这样的一个需求,有个实体 Source(资源);有基本的属性:名字name;购入日期 BuyDate,然后我们给用户开放追加多个属性的功能,比如说:用户把添加一个资源类型,定义为computer的名字取做:电脑(COMPUTER),然后还能给资源追加一个属性内存(RAM):如何才能灵活的设计source这个模型啊


------解决方案--------------------
你可以在设置一个参数表的,然后加入一个属性放入参数表中,这个就可以了
------解决方案--------------------
你的资源类型多吗?还有对应的资源类型下的属性多吗?如果不多的话可以用集成类的集成来实现,如下:
Source--name,BuyDate,sourceType
|__Computer--ram..
如果多的话可以这样
Source--name,BuyDate,sourceType,Map(这个存放对应类型的特有属性)
------解决方案--------------------
追加属性 可以看看设计模式当中的装饰器 可以反复追加类以及属性
另外可以采用 类里面关联集合 持有集合即可