2010-06-24 74 views
5

我是在通用设计模式下做什么的?如果是这样,名字是什么?这是一种常见的设计模式吗? “描述符模式”?

我有一个复杂的对象,有一个像字符串和字符串列表,以及其它复杂的对象“简单”的领域。我想将这个对象的实例添加到JMS消息队列中,这意味着它们需要是Serializable。我不想让整个对象图Serializable,所以我选择而不是使包含必要的信息来建立复杂的对象和“生成器”对象,可以创建对象“描述符”对象。现在,我序列化“描述符”对象并将其添加到队列中。当对象出队时,它使用“Builder”构建成一个完整的对象。

一个重要的注意,使的是,对象是在其他系统上运行的作业。消息队列是一种方式,序列化只发生在作业生命周期的开始。

回答

9

最相似的模式给你实现一个似乎备忘录模式。

在这种情况下,它用于一个对象的状态存储到备忘录对象,而任何可以修改原始对象,并允许您使用纪念品作为一个“以前的状态”,以恢复原来的状态你的对象。

你的情况,你不需要存储对象的快照修改原来的一个,但正如本身的序列化值的轻量级版本,所以它不是完全一样的东西,但颇为相似。

+0

感谢您的回答和简短的解释。 – 2010-06-25 06:48:29