springboot中validator數據校驗功能的實現
普通校驗
導入依賴:
默認的報錯:沒有提示具體的屬性
設置自己的錯誤信息提示:創建 ValidationMessages.properties
內容如下:
user.id.notnull = id 不能為空 user.username.size = username 長度為5-10 user.age.min = age 年齡最小為1 user.age.max = age 年齡最大為100 user.email.pattern= email 格式不正確
實體類註解上設置message
屬性,,使用{}
引入 VallidationMessages.properties
內容:
public class User { @NotNull(message = "{user.id.notnull}") private Integer id; @Size(min = 5,max = 10,message = "{user.username.size}") // @Size 字符串長度 private String username; @DecimalMin(value = "1",message = "{user.age.min}") // @DecimalMin 數值最小 @DecimalMax(value = "100",message = "{user.age.max}") private Integer age; @Email(message = "{user.email.pattern}") private String email; }
測試:
自定義錯誤信息,顯示指定屬性錯誤
分組校驗
不同的請求,實現不同的校驗。。
創建兩個空接口,標識作用:
ValidationGroup01 ValidationGroup02
修改User:
public class User { @NotNull(message = "{user.id.notnull}",groups = {ValidationGroup01.class,ValidationGroup02.class}) private Integer id; @Size(min = 5,max = 10,message = "{user.username.size}",groups = {ValidationGroup01.class}) // @Size 字符串長度 private String username; @DecimalMin(value = "1",message = "{user.age.min}") // @DecimalMin 數值最小 @DecimalMax(value = "100",message = "{user.age.max}") private Integer age; @Email(message = "{user.email.pattern}",groups = {ValidationGroup01.class}) private String email; }
controller中表明你要使用哪個分組校驗:
public void addUser(@Validated(value = ValidationGroup01.class) User user, BindingResult result){ ... }
隻會校驗user中groups標註瞭ValidationGroup01.class 的字段。。
到此這篇關於springboot中validator數據校驗的文章就介紹到這瞭,更多相關springboot validator數據校驗內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- SpringBoot數據校驗功能的實現
- SpringBoot參數校驗的方法總結
- 解決get請求入參@NotNull驗證不生效問題
- SpringBoot集成Validation參數校驗
- SpringBoot開發技巧啟動時配置校驗實現示例