我应该如何映射模型bean以查看Spring MVC中的模型bean?

时间:2011-11-21 16:02:13

标签: forms spring-mvc viewmodel

在我的Spring MVC应用程序中,我们有 form 对象,这些对象由JSP中的<form:form标记映射。这些对象与我的常规模型bean分开,实际上形成了一种视图模型。这些对象的难点在于这些对象与服务对象所期望的实际模型bean之间的映射。目前,我们在控制器中手动编写代码映射表单到bean,反之亦然。这不是最佳的,因为它需要额外的代码量。我们考虑过的其他选择是。

  • 编写一个映射类。这仍然需要手动编写代码,但至少它不在控制器中。
    • 自动生成映射类。据推测,这需要手动生成和更新某种映射文件。
  • 在bean中命名属性并使用相同的表单,并使用Spring的BeanUtils.copyProperties来回移动它们。这看起来很糟糕,因为它不是一个明显的链接会导致奇怪的运行时行为,如果它没有保持一致。
  • 将表单对象编写为 facade ,在内部保存bean并更新它。

执行此操作的项目的长期健康状况的最佳方法是什么?

1 个答案:

答案 0 :(得分:1)

我建议你使用dozer框架来映射域对象和查看对象。只有问题你还需要手动创建视图类。你也可以通过代码生成自动化它。