ホームページ >Java >&#&チュートリアル >Spring MVC アプリケーションでユーザー入力を検証するにはどうすればよいですか?
はじめに
Web アプリケーションを構築する場合、ユーザー入力の妥当性を確保する重要です。 Spring MVC はフォーム検証のための複数のメソッドを提供しており、それぞれに利点と特定のシナリオへの適合性があります。
メソッド 1: アノテーションベースの検証
Spring 3.x ではアノテーションが導入されています(例: @NotNull) 簡潔なフィールドレベルの検証用。これらのアノテーションは JSR-303 標準の一部です。
例:
<code class="java">public class User { @NotNull private String name; // ... }</code>
コントローラー内:
<code class="java">@PostMapping("/user") public void createUser(@Valid @ModelAttribute User user, BindingResult result) { // Check for validation errors in the `result` object. }</code>
方法 2: 手動検証
複雑な検証ロジックのために、Spring は org.springframework.validation.Validator インターフェイスを提供します。カスタム バリデータを実装して、特定の検証を実行できます。
例:
<code class="java">public class UserValidator implements Validator { // Validation code here }</code>
コントローラー内:
<code class="java">@PostMapping("/user") public void createUser(@ModelAttribute User user, BindingResult result) { UserValidator validator = new UserValidator(); validator.validate(user, result); // Check for validation errors in the `result` object. }</code>
メソッド3: ハイブリッド アプローチ
注釈と手動検証の両方を組み合わせることができます。単純な検証にはアノテーションを使用し、複雑なロジックにはバリデータを使用します。
例:
<code class="java">public class User { @NotNull private String name; // ... }</code>
カスタム バリデータ:
<code class="java">public class UserValidator implements Validator { // Complex validation code here }</code>
コントローラー内:
<code class="java">@PostMapping("/user") public void createUser(@Valid @ModelAttribute User user, BindingResult result, UserValidator validator) { validator.validate(user, result); // Check for validation errors in the `result` object. }</code>
追加の考慮事項
参照:
以上がSpring MVC アプリケーションでユーザー入力を検証するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。