springboot项目集成参数验证

简介: 我们在进行web端开发时,总是要对一些传入参数进行一些效验,比如是否为空,是否符合格式等等的规则。为了更加方便、高效的进行开发,市面上多出了几款参数效验的组件,今天我们要来学习的就是validation组件,还有相关的集成到SpringBoot项目中的过程。

写在前面


我们在进行web端开发时,总是要对一些传入参数进行一些效验,比如是否为空,是否符合格式等等的规则。

为了更加方便、高效的进行开发,市面上多出了几款参数效验的组件,今天我们要来学习的就是validation组件。

接下来我们会对其进行一些介绍,还有相关的集成到SpringBoot项目中的过程。一起来看看吧。


集成过程


第一步,首先让我们引入相关jar包。

<dependency>
    <groupId>javax.validation</groupId>
    <artifactId>validation-api</artifactId>
    <version>2.0.1.Final</version>
</dependency>


如上代码所示,这就是validation的核心组件包了,这里其实可以不用这么引入。

如果你已经引入了下面的spring-boot-starter-web相关jar包。

<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>


那么就已经自动引入成功了,剩下的就是在确切的实体类中进行使用了。


如何使用


我们需要先有一个Controller类,用于书写接口。

@RestController
@RequestMapping("/test")
public class ConfigController {
    @GetMapping("/save")
    public String save(@RequestBody TestPO po){
        return "";
    }
}

如上代码,我们目前书写了一个controller,随后我们在这个controller中使用效验组件validation组件,只需要在TestPO po前面加一个注解 @Valid 即可开始效验参数。


随后我们在TestPO类中进行具体参数的效验规则配置。

public class TestPO {
    /**
     * 用户姓名
     */
    @NotBlank(message = "用户姓名不能为空!")
    private String username;
}

如上代码所示,只需要加入@NotBlank来修饰,即可对username进行规则的效验。


小结


当然,除了NotBlank注解,还有其他很多的注解可供我们开发使用,下篇文章我们继续将其他注解,希望大家有所成长。

目录
相关文章
|
2月前
|
JSON 安全 算法
|
26天前
|
Java 应用服务中间件
SpringBoot获取项目文件的绝对路径和相对路径
SpringBoot获取项目文件的绝对路径和相对路径
63 1
SpringBoot获取项目文件的绝对路径和相对路径
|
16天前
|
存储 运维 安全
Spring运维之boot项目多环境(yaml 多文件 proerties)及分组管理与开发控制
通过以上措施,可以保证Spring Boot项目的配置管理在专业水准上,并且易于维护和管理,符合搜索引擎收录标准。
30 2
|
21天前
|
分布式计算 关系型数据库 MySQL
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型 图像处理 光通信 分布式计算 算法语言 信息技术 计算机应用
37 8
|
28天前
|
JavaScript 前端开发 Java
SpringBoot项目的html页面使用axios进行get post请求
SpringBoot项目的html页面使用axios进行get post请求
43 2
|
28天前
|
前端开发 Java Spring
SpringBoot项目thymeleaf页面支持词条国际化切换
SpringBoot项目thymeleaf页面支持词条国际化切换
59 2
|
28天前
|
JSON Java 数据库
SpringBoot项目使用AOP及自定义注解保存操作日志
SpringBoot项目使用AOP及自定义注解保存操作日志
38 1
|
1月前
|
JavaScript Java 项目管理
Java毕设学习 基于SpringBoot + Vue 的医院管理系统 持续给大家寻找Java毕设学习项目(附源码)
基于SpringBoot + Vue的医院管理系统,涵盖医院、患者、挂号、药物、检查、病床、排班管理和数据分析等功能。开发工具为IDEA和HBuilder X,环境需配置jdk8、Node.js14、MySQL8。文末提供源码下载链接。
|
12天前
|
JavaScript 前端开发 Java
SpringBoot项目的html页面使用axios进行get post请求
SpringBoot项目的html页面使用axios进行get post请求
30 0
|
1月前
|
关系型数据库 MySQL Java
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
27 0