我有弹簧MVC(模型)一个非常基本的问题。 我工作在一个项目中,我们在模型(即model.addAttribute(..)设置这么多addributes。我的问题是,是否有任何设计模式,我可以使用,以避免这么多addAttributes?
我知道我可以创建一个bean /形式和里面我还可以创建相应的制定者/吸气,但我只是寻找如果有任何其他选项。
请建议。
我有弹簧MVC(模型)一个非常基本的问题。 我工作在一个项目中,我们在模型(即model.addAttribute(..)设置这么多addributes。我的问题是,是否有任何设计模式,我可以使用,以避免这么多addAttributes?
我知道我可以创建一个bean /形式和里面我还可以创建相应的制定者/吸气,但我只是寻找如果有任何其他选项。
请建议。
没有什么特殊的设计模式,只是一些Spring或通用技术来避免给定的控制器内过多的addAttribute电话。
如果你有,你总是需要在您的视图(如特定对象,列表,布尔如“isXXXActivated”或“showThis”,等等),你只需要添加的那种在你的控制器的方法属性:
@ModelAttribute("isXXXActivated")
public boolean isXXXActivated(){
return isXXXActivated;
}
这将在您的模型每次你的控制器被称为添加“isXXXActivated”。
如果添加相同的属性进行的跨所有的控制器,你可以考虑增加他们在一个超级控制器(弹簧@Controller可以扩展另一个@Controller没有问题)。
最后,如果一些属性属于一组,你可以将它们作为对象的领域。 然后你只需要添加此对象的属性。 实施例:分组显示条件为显示类。
如果你想使用设计模式来解决问题,你真的需要看看如何所有的人互动。 你有没有抬头不同的设计模式? 你有没有考虑让更多的对象,所以你可以,如果你知道设计模式,他们分裂和推广他们的模板方法。