首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

怎么自动备份删除的对象(2)

2012-10-25 
如何自动备份删除的对象(2)自动删除,我们要作的事有三件?1) 如何从要删除的Domain对象中获得需要备份的信

如何自动备份删除的对象(2)

自动删除,我们要作的事有三件

?1) 如何从要删除的Domain对象中获得需要备份的信息M

?2) 这个信息M如何持久化

?3) 持久化的数据如何查询。

?

后两者其实有多种选择,比如可以持久化到文件、数据库或者数据库+文件,随着持久化介质的不同,查询机制也不一样。这里首先讨论第一个方面。

为了作一个通用的框架,希望能通过meta data的方式简化收集信息的过程。那么就有三种方式可供选择:interface,annotation && XML,这也是目前广泛应用的各种框架如Spring,Hibernate等提供的方式。这其中,interface可以实现比较复杂的逻辑,annotation使用相对简便,而XML是最没有倾入的。手上的项目暂时不考虑移植,所以先实现了interface+annotation方式

?

首先来看annotation, 我定义个一个叫Record的Annotation。

?

Map<String,Object> content=RecordUtils.toContent(obj);

??? 就可以得到其中所有的信息了,下面所要作的就是将这些信息持久化而已,这将在下一篇描述。

?

??? 采用interface+annotation的方法,我们成功的将“如何记录自己”这件事交给了对象自身。这已经有了点rich domain的意味。相对来说 rich domain意味着更好/更符合直觉的控制,对于record这种与对象自身紧密相关的行为,采用rich domain是很合适的。

热点排行