springboot参数检验,Assert使用
生活随笔
收集整理的這篇文章主要介紹了
springboot参数检验,Assert使用
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
assert:斷言是java的一個保留字,用來對程序進(jìn)行調(diào)試,后接邏輯運算表達(dá)式,如下:
int a = 0, b = 1; assert a == 0 && b == 0; 使用方法:javac編譯源文件,再java -ea class文件名即可。在springboot中可以使用spring提供的Assert類的方法對前端來的參數(shù)進(jìn)行校驗,如:
@GetMapping(value = "/search") public String testAssert(Integer userId){Assert.notNull(userId, "用戶信息不能為空");return "ok"; }這里對userId進(jìn)行了非空的檢驗,為空就拋非法參數(shù)異常,要是需要對某個對象的某屬性進(jìn)行檢驗可以參考:https://blog.csdn.net/qq_41633199/article/details/105159128。
異常拋出后,默認(rèn)情況先會將異常信息傳給browser,這樣不太友好,我們可以在定義一個全局異常處理器對異常進(jìn)行捕獲,給browser友好的提示,代碼如下:
@ControllerAdvice public class GlobalExcHandler {/*** @description:處理由斷言,IllegalArgumentException拋出得異常信息* @return java.lang.String*/@ResponseBody@ExceptionHandler(value = IllegalArgumentException.class)public String handleArgError(IllegalArgumentException e){return e.getMessage();} }測試:
?
console端出警告:
?
總結(jié)
以上是生活随笔為你收集整理的springboot参数检验,Assert使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: springboot参数校验,对象的某属
- 下一篇: idea webapp目录404问题,w