日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

spring boot validated的使用

發布時間:2025/6/15 编程问答 26 豆豆
生活随笔 收集整理的這篇文章主要介紹了 spring boot validated的使用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

spring-boot中可以用@validated來校驗數據,如果數據異常則會統一拋出異常,方便異常中心統一處理。
比如,我們判斷一個輸入參數是否合法,可以用如下方式

一 基礎使用

因為spring-boot已經引入了基礎包,所以直接使用就可以了
1 首先在controller上聲明需要對數據進行校驗

@RequestMapping(value="/url.json",method= {RequestMethod.POST}) @ResponseBody @Transactional public Result<?> xxmethod( @RequestBody @Validated XoPO xoPo) throws ParseException, UnsupportedEncodingException {}

2 然后在bean上聲明需要被校驗的字段

@data public class XoPO{@validatedprivate List<OrderPerson> personList;@NotNull@Size(max=32,message="code is null")private String code;@NotBlank@Size(max=32,message="product is null")private String product; }

而后,當輸入不能滿足條件是,就會拋出異常,而后統一由異常中心處理
也可以用BindingResult,但是用了這個后就必須手動處理異常,侵入了正常的邏輯過程,并不推薦

二 常用注解類型

注意,不要錯用了異常類型,比如在int上不可用@size

常用注解如下

@AssertFalse 校驗false @AssertTrue 校驗true @DecimalMax(value=,inclusive=) 小于等于value, inclusive=true,是小于等于 @DecimalMin(value=,inclusive=) 與上類似 @Max(value=) 小于等于value @Min(value=) 大于等于value @NotNull 檢查Null @Past 檢查日期 @Pattern(regex=,flag=) 正則 @Size(min=, max=) 字符串,集合,map限制大小 @Validate 對po實體類進行校驗

三 嵌套校驗

如果一個類中包含了另外一個實體類,那么在上面加上@Validated即可,比如上面的

public class XoPO { @validatedprivate List<PersonDetailPO> personList;}

四 @pathvariable的校驗

spring-boot可能目前并不支持對參數的驗證:https://jira.spring.io/browse...

public Result<?> xoById( @NotNull @NotBlank @Size(min=10,max=32)@PathVariable(value="accountId") String id) {}

但目前還無法拋出異常, 可能在spring的下一個版本中解決,或者不用@Pathvariable,而在service中

Class XoService{public xoMethon( @NotNull String id){} }

來解決

總結

以上是生活随笔為你收集整理的spring boot validated的使用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。