Spring MVC 参数校验 总结

1. 简介

Sping MVC提供了参数校验的方便注解。

2.代码

在pom.xml中添加依赖:

xml 复制代码
<dependency>
    <groupId>org.hibernate.validator</groupId>
    <artifactId>hibernate-validator</artifactId>
    <version>8.0.0.Final</version>
</dependency>

<dependency>
    <groupId>org.hibernate</groupId>
    <artifactId>hibernate-validator-annotation-processor</artifactId>
    <version>8.0.0.Final</version>
</dependency>

在实体类中添加注解:

java 复制代码
@Data
public class Product {
    @NotBlank//非空
    private String name;

    @Length(min = 6)//最小长度为6
    private String id;

	@NotBlank//非空
	private String category; 
	
    @Past//必须是过去的时间
    @JsonbDateFormat("yyyy-MM-dd HH:mm:ss")
    private Date inDate;
}

在业务中使用:

java 复制代码
//必须标注@Validated代表校验,BindingResult捕捉校验错误紧挨着被校验数据
public Object register(@Validated @RequestBody Product product, BindingResult result){
    if(result.hasErrors()){//捕获校验错误
        Map data = new HashMap();
        data.put("code",401);
        data.put("msg","参数校验异常");
        return data;
    }
	...
}

3.常用校验注解


相关推荐
BD_Marathon20 小时前
【JavaWeb】Tomcat_简介
java·tomcat
⑩-20 小时前
Java-元注解 (Meta-Annotations)
java
Meteors.20 小时前
安卓进阶——原理机制
android·java·开发语言
是阿漂啊20 小时前
vscode运行springboot项目
java·spring boot·后端
ghfdgbg20 小时前
13. 配置优先级 + Bean的管理 + SpringBoot核心原理
java·spring boot·后端
Moe48820 小时前
Elasticsearch 8.1 Java API Client 客户端使用指南(索引、文档操作篇)
java·后端·面试
洋亦20 小时前
GoF23种设计模式 简介
java
Javatutouhouduan20 小时前
Java面试常问Redis核心知识点整理!
java·数据库·redis·java面试·后端开发·java架构师·java程序员
AAA简单玩转程序设计20 小时前
谁说Java枚举只是“常量装盒”?它藏着这些骚操作
java·前端
枯基Evan20 小时前
applicationTaskExecutor Spring 内置线程池失效
java·数据库·spring