SpringMVC表單驗證器

2022-09-07 16:06:14 字數 1670 閱讀 7443

本章講解springmvc中怎麼通過註解對表單引數進行驗證。

使用springboot,spring-boot-starter-web會自動引入hiberante-validator,validation-api依賴。

webmvcconfigureradapter實現類裡面新增驗證器及國際化指定資源檔案。

@override

public validator getvalidator()

@bean

public messagesource messagesource()

接收引數的表單類:

public

class

loginform ")

@size(min = 4, max = 20, message = "")

private string loginname;

@notnull(message = "")

@size(min = 8, max = 20, message = "")

private string loginpassword;

public string getloginname()

public

void

setloginname(string loginname)

public string getloginpassword()

public

void

setloginpassword(string loginpassword)

}

在要驗證的字段上面加入驗證註解,更多參考validation-apijar包下的j**ax.validation.constraints包。

springmvc控制器:

public string login(@validated loginform form)

使用@validated註解表示該引數需要驗證。

message裡面{}引用的是國際化的資源。

新增國際化資源檔案:

validationmessages.properties

validationmessages_zh_cn.properties

需要指定編碼為ascii,不然會亂碼。

異常全域性處理時進行處理:

@controlleradvice

public class exceptionresolver

...}

}

或者在驗證的類後面加bindingresult,錯誤資訊都會放在該物件裡面,而不會丟擲異常。如:

public string login(@validated loginform form, bindingresult bindingresult)

推薦閱讀

面經:史上最全j**a多執行緒面試題及答案

面經:史上最全阿里高階j**a面試題

面經:史上最全spring面試題

書籍:高階j**a架構師必看的15本書

SpringMVC 表單驗證

表單驗證 null 被注釋的元素必須為 null notnull 被注釋的元素必須不為 null asserttrue 被注釋的元素必須為 true assertfalse 被注釋的元素必須為 false min value 被注釋的元素必須是乙個數字,其值必須大於等於指定的最小值 max valu...

Spring MVC表單驗證

看登入控制器 引數userentity user就是從表單接收到的引數,這個引數前面加了 validated表示這個引數是需要驗證的,而驗證的結果,則儲存在bindingresult result中,所以接下來的 if result.haserrors 就判斷,如果表單校驗不通過,則跳轉回表單編輯頁...

python表單驗證 表單驗證

django有乙個form類為我們提供了強大的表單驗證提交。1 建立form from django import forms class commentform forms.form name forms.charfield label 您的姓名 max length 100 email form...