使用@Validated 和 BindingResult 遇到的坑及解決
@Validated和BindingResult 使用遇到的坑
@Validated 與BindingResult 需要相鄰,否則 變量result 不能接受錯誤信息
控制臺輸出
Field error in object ‘entity’ on field ‘變量’: rejected value [null]; codes [NotNull.entity.變量,NotNull.變量,NotNull.java.lang.String,NotNull]; arguments [org.springframework.context.support.DefaultMessageSourceResolvable: codes
正確的內容截圖
@Validated @Valid三種異常捕獲處理
異常共三種
BindException
:表單提交有效,對於以json格式提交將會失效MethodArgumentNotValidException
:前段以json格式有效ConstraintViolationException
:參數上加@RequestParam或參數加@NotBlank @NotNull等
以上為個人經驗,希望能給大傢一個參考,也希望大傢多多支持WalkonNet。
推薦閱讀:
- 使用註解@Validated和BindingResult對入參進行非空校驗方式
- 快速校驗實體類時,@Valid,@Validated,@NotNull註解無效的解決
- Spring Boot使用JSR-380進行校驗的示例
- 關於BindingResult的使用總結及註意事項
- 詳解Spring中@Valid和@Validated註解用法