java 后端校验_如何实现Java后端数据校验?看这篇就足够!
前言
每次我們在搭建一個開源項目的首要任務包括:項目的統一異常處理、統一結果封裝以及做項目的數據校驗,在前后端分離的情況下,不僅前端需要做數據校驗,同樣后端也要實現,前端主要使用一些類似與jQuery Validate等js/css插件實現通過數據校驗,比如:bootstrap-validator,而后端主要使用的是Hibernate Validator檢驗框架,通過數據校驗,我們能避免用戶借助一些HTTP請求工具直接向后端發送一些不合法的數據請求,本文將入如何在Spring/Spring Boot下實現后端的數據校驗。
Hibernate Validator
常見注解
注解
用途
Valid
遞歸的對關聯的對象進行校驗
AssertFalse
用于boolean字段,該字段的值只能為false
AssertTrue
用于boolean字段,該字段只能為true
DecimalMax(value)
被注釋的元素必須是一個數字,只能大于或等于該值
DecimalMin(value)
被注釋的元素必須是一個數字,只能小于或等于該值
Digits(integer,fraction)
檢查是否是一種數字的(整數,小數)的位數
Future
檢查該字段的日期是否是屬于將來的日期
FutureOrPresent
判斷日期是否是將來或現在日期
Past
檢查該字段的日期是在過去
PastOrPresent
判斷日期是否是過去或現在日期
Max(value)
該字段的值只能小于或等于該值
Min(value)
該字段的值只能大于或等于該值
Negative
判斷負數
NegativeOrZero
判斷負數或0
Positive
判斷正數
PositiveOrZero
判斷正數或0
NotNull
不能為null
Null
必須為 null
Pattern(value)
被注釋的元素必須符合指定的正則表達式
Size(max, min)
檢查該字段的size是否在min和max之間,可以是字符串、數組、集合、Map等
Length(max, min)
判斷字符串長度
CreditCardNumber
被注釋的字符串必須通過Luhn校驗算法,銀行卡,信用卡等號碼一般都用Luhn計算合法性
被注釋的元素必須是電子郵箱地址
Length(min=, max=)
被注釋的字符串的大小必須在指定的范圍內
NotBlank
只能用于字符串不為null,并且字符串trim()以后length要大于0
NotEmpty
集合對象的元素不為0,即集合不為空,也可以用于字符串不為null
Range(min=, max=)
被注釋的元素必須在合適的范圍內
SafeHtml
classpath中要有jsoup包
ScriptAssert
要有Java Scripting API 即JSR 223("Scripting for the JavaTMPlatform")的實現
URL(protocol=,host=,port=,regexp=,flags=)
被注釋的字符串必須是一個有效的url
Maven依賴
org.hibernate.validator
hibernate-validator
6.1.0.Final
org.hibernate.validator
hibernate-validator
6.1.0.Final
org.springframework.boot
spring-boot-starter-web
org.projectlombok
lombok
true
org.springframework.boot
spring-boot-starter-test
test
總結
以上是生活随笔為你收集整理的java 后端校验_如何实现Java后端数据校验?看这篇就足够!的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java snmp walk_snmpw
- 下一篇: java美元兑换,(Java实现) 美元