我是新来的设计模式,我有以下需求:我有一组由DTO对象表示的事件集合:LateEventDTO,RescheduleEventDTO等。每个DTO对象都有自己的一组属性。现在,我有一个名为EventDTO的抽象类,并且所有不同类型的DTO对象(如LateEventDTO,RescheduleEventDTO等)都扩展了EventDTO。显示DTO对象的设计模式
我将传递这些DTO对象之一到我的UI层(jsp页面),该层检查它是什么类型的DTO对象。像这样:
if(event instance of Late){
//handle late event and display it's content
}
else if(event instance of Reschedule){
//handle reschedule event and display it's content
}
等等等等。
我想要的是使表示层不知道不同类型的eventDTO对象。它需要做的就是获取一个通用对象并显示它的内容。它不应该像上面显示的那样明确地检查它的类型。
这种情况下最好的设计模式是什么?
我会考虑有关*策略模式* –
你应该重新设计IMO的东西,这样你就不会存在这样的问题:刚1个界面为你的DTO所以你不需要检查的实例。 – zapl