1
オブジェクトをフォームにバインドし、検証コントローラメソッドでオブジェクトの表記を@Valid
とすることで、オブジェクトのすべてのフィールドを検証するのは簡単です。Java Spring - 個々のオブジェクトフィールドの妥当性確認
私はユーザーがいくつかのフィールドを更新できるようにする更新画面を持っているとします。手作業による検証を避けるために遠く離れていますか?
ありがとうございます!
オブジェクトをフォームにバインドし、検証コントローラメソッドでオブジェクトの表記を@Valid
とすることで、オブジェクトのすべてのフィールドを検証するのは簡単です。Java Spring - 個々のオブジェクトフィールドの妥当性確認
私はユーザーがいくつかのフィールドを更新できるようにする更新画面を持っているとします。手作業による検証を避けるために遠く離れていますか?
ありがとうございます!
検証ルールのサブセットに対する検証を持っているために、あなたはこの
に似て、あなたの豆やフォームモデルのためのグループのセットを定義する必要があります@Validated
で検証グループのバネ機能を使用することができます
public class Form {
public interface Group1 { /*empty interface*/ };
public interface Group2 { /*empty interface*/ };
@NotEmpty(groups = { Group1.class }) // associate constraints
private String field1; // to a validation group
@NotEmpty(groups = { Group2.class })
private String field2;
}
そして、あなたのコントローラでは、あなたがこの
@Controller
public class FormController {
@RequestMapping(value = "/validate1", method = RequestMethod.POST)
public String updateGroup1(@Validated(Form.Group1.class) Form form, Errors errors) {
if (errors.hasErrors()) {
// return to the same view
}
// return success
}
}
のようなアノテーションを使用することができますあなたはそれのためにここに良い例を見つけることができます
https://narmo7.wordpress.com/2014/04/26/how-to-set-up-validation-group-in-springmvc/
他のすべてのフィールドに対して検証を実行するとどんな害がありますか?誰が悪意のあるユーザーがサーバーに移行する前に悪意のあるユーザーを変更しないのですか? – Makoto
私はあなたが正しいと思います!私は頭の中にいくつかの想像上の有害要因を持っていました。ありがとう! – user2892437