【问题标题】:How can I exclude/ disallow field in Validator in Spring如何在 Spring 的 Validator 中排除/禁止字段
【发布时间】:2011-11-27 16:47:44
【问题描述】:

我有 2 个表格

  1. 添加 Book (addBook.jsp) 和它的控制器 (AddBookController.java)
  2. 编辑书(editBook.jsp)和它的控制器(EditBookController.java)

Book.java 是两个视图的 bean 类。

editBook.jspaddBook.jsp 的 UI 相同。

我创建了org.springframework.validation.Validator (BookValidator.java) 用于添加书籍,相同的验证器可用于 EditBookController.java

但是在AddBookController 中,当用户输入图书信息时,用户必须输入唯一的捆绑包号。我对 BookValidator 上的唯一捆绑号进行了一些验证。

当用户 EditBook 时,此验证不能工作。

我想在图书编辑时排除/禁止验证字段。

我已经完成了

binder.setDisallowedFields(new String[] {"bundleNumber"});

但没有帮助我。

请建议我如何重用验证器?

【问题讨论】:

    标签: java spring spring-mvc validation


    【解决方案1】:

    听起来您需要两个验证器。也许更具体的一个可以是更一般的一个的子类。 template method pattern 在这里可以为每项验证提供不同的、可覆盖的方法。

    【讨论】:

    • 感谢您的回答。我是按照模板方法模式开发的。这对我帮助很大。
    猜你喜欢
    • 2013-11-28
    • 2011-05-10
    • 2012-07-04
    • 2018-03-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-02-24
    相关资源
    最近更新 更多