4

我正在使用 Spring Roo 开始一个新项目。我发现它生成的 MVC 控制器容易受到批量分配的影响。我想知道是否有一种标准方法可以只允许更新某些字段。我正在考虑使用@InitBinder,但我不知道这是否是最好的方法。

我的印象是,我所知道的大多数 Java EE 框架都忽略了这个问题和 CSRF 预防。更糟糕的是,即使在它们自己的示例代码中也经常发现这些漏洞。

旁注:我已经知道 HDIV,但我不想“丑化”我漂亮的 REST URL,除了 CSRF 预防。

4

1 回答 1

1

这个问题没有很好的解决方案,选项:

  • 创建表单或 DTO 对象,它们的字段仅包含表单中的内容(但这不适用于 spring roo)
  • 使用对象的 2 个实例,表单实例和数据库实例,然后仅将表单页面中的字段从表单实例复制到 db 实例

本文可用于帮助解决批量分配问题: http ://blog.42.nl/articles/leveraging-the-spring-mvc-3.1-handlermethodargumentresolver-interface/

于 2012-09-02T10:13:28.437 回答