您好,登錄后才能下訂單哦!
編寫 Web 應用程序的時候,經常要做的事就是要對前端傳回的數據進行簡單的驗證,比如是否非空、字符長度是否滿足要求,郵箱格式是否正確等等。在 Spring Boot 中,可以使用 Bean Validation (JSR-303) 技術通過注解的方式來進行參數驗證。
準備 DTO 對象
data class UserRegisterModel( @get: NotEmpty(message = "User name is required") @get: Size(message = "Length of user name must be between 6 and 20", min = 6, max = 20) var username: String, @get: NotEmpty(message = "Password is required") var password: String, @get: NotEmpty(message = "Email is required") @get: Email var email: String)
這里定義了一個十分常見的 DTO 對象,用來承載用戶注冊時的數據,可能你已經注意到了一些奇怪的地方,在一些注解的前面多了get:這樣的東西,是因為 kotlin 會直接在字節碼中生成 getter 跟 setter,這樣寫是顯式的是表明這個注解應該作用在getter上。
準備一個 Controller
/** * 用戶注冊接口 */ @PostMapping fun register(@Valid @RequestBody model: UserRegisterModel): Any { val user = User(userName = model.username, password = model.password, email = model.email) userRepo.save(user) return user }
只需要在需要驗證的參數前加上 @Valid 注解,Spring 就會自動的驗證參數的正確性。
來個測試
把用戶名空著
參數完整且正確
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。