全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

Kotlin + Spring Boot 请求参数验证的代码实例

编写 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 就会自动的验证参数的正确性。

来个测试

把用户名空着

参数完整且正确

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# Spring  # Boot  # 参数验证  # 验证  # SpringBoot validator参数验证restful自定义错误码响应方式  # SpringBoot整合Hibernate Validator实现参数验证功能  # Spring Boot利用JSR303实现参数验证的方法实例  # spring boot参数验证注解@NotNull、@NotBlank和@NotEmpty  # 用户注册  # 的是  # 就会  # 是因为  # 只需  # 要在  # 要做  # 可以使用  # 要对  # 你已经  # 来个  # 用在  # 大家多多  # 是否正确  # 应用程序  # 空着  # java  # data  # UserRegisterModel  # class 


相关文章: 如何通过cPanel快速搭建网站?  香港服务器WordPress建站指南:SEO优化与高效部署策略  武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?  存储型VPS适合搭建中小型网站吗?  如何在阿里云完成域名注册与建站?  活动邀请函制作网站有哪些,活动邀请函文案?  孙琪峥织梦建站教程如何优化数据库安全?  建站之星如何开启自定义404页面避免用户流失?  Swift开发中switch语句值绑定模式  制作网站的过程怎么写,用凡科建站如何制作自己的网站?  网站建设制作、微信公众号,公明人民医院怎么在网上预约?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?  赚钱网站制作软件,建一个网站怎样才能赚钱?是如何盈利的?  如何快速搭建二级域名独立网站?  公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?  交易网站制作流程,我想开通一个网站,注册一个交易网址,需要那些手续?  如何选择域名并搭建高效网站?  Swift中循环语句中的转移语句 break 和 continue  建站之星微信建站一键生成小程序+多端营销系统  测试制作网站有哪些,测试性取向的权威测试或者网站?  网站制作多少钱一个,建一个论坛网站大约需要多少钱?  如何用西部建站助手快速创建专业网站?  道歉网站制作流程,世纪佳缘致歉小吴事件,相亲网站身份信息伪造该如何稽查?  在线制作视频网站免费,都有哪些好的动漫网站?  Android自定义listview布局实现上拉加载下拉刷新功能  建站主机数据库如何配置才能提升网站性能?  ,购物网站怎么盈利呢?  如何通过WDCP绑定主域名及创建子域名站点?  可靠的网站设计制作软件,做网站设计需要什么样的电脑配置?  网站制作的软件有哪些,制作微信公众号除了秀米还有哪些比较好用的平台?  如何选择网络建站服务器?高效建站必看指南  建站之星代理平台如何选择最佳方案?  如何快速生成高效建站系统源代码?  微信推文制作网站有哪些,怎么做微信推文,急?  专业网站设计制作公司,如何制作一个企业网站,建设网站的基本步骤有哪些?  建站主机与服务器功能差异如何区分?  如何在Golang中使用encoding/gob序列化对象_存储和传输数据  C++时间戳转换成日期时间的步骤和示例代码  建站主机默认首页配置指南:核心功能与访问路径优化  详解jQuery中基本的动画方法  如何在Windows服务器上快速搭建网站?  如何快速查询网址的建站时间与历史轨迹?  如何用IIS7快速搭建并优化网站站点?  如何撰写建站申请书?关键要点有哪些?  武汉网站制作费用多少,在武汉武昌,建面100平方左右的房子,想装暖气片,费用大概是多少啊?  巅云智能建站系统:可视化拖拽+多端适配+免费模板一键生成  建站OpenVZ教程与优化策略:配置指南与性能提升  宝塔新建站点报错如何解决?  广州网站建站公司选择指南:建站流程与SEO优化关键词解析  Android自定义控件实现温度旋转按钮效果 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。