首頁 > Java > java教程 > 主體

如何在 Spring MVC 應用程式中驗證使用者輸入?

Patricia Arquette
發布: 2024-11-02 07:41:29
原創
250 人瀏覽過

How can I validate user inputs in a Spring MVC application?

使用Spring MVC 驗證使用者輸入的方法

簡介

建立Web 應用程式時,確保使用者輸入的有效性至關重要。 Spring MVC 提供了多種表單驗證方法,每種方法都有其優點和適合特定場景的方法。

方法一:基於註解的驗證

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>
登入後複製

方法二:手動驗證

。 >

對於複雜的驗證邏輯,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>
登入後複製

在控制器中:

  • 在控制器中:
  • 在控制器中:

在控制器中:

其他注意事項
  • 驗證處理不應與異常處理混淆。
  • 避免在控制器中進行內聯驗證以保持它精益且可維護。
考慮使用自訂驗證註解來抽象化複雜的驗證邏輯。 參考文獻:[Bean使用Spring 驗證](http://www.codejavu.com/platform/spring/bean -validation-with-spring-annotations/)[Spring MVC 中的驗證](https://www.baeldung .com/spring-mvc-validation)[Spring 驗證文件](https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/web.html# mvc-ann-驗證)

以上是如何在 Spring MVC 應用程式中驗證使用者輸入?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!