Spring中@validated注解使用说明

乔欣 Spring 发布时间:2023-03-17 21:16:15 阅读数:12896 1
下文笔者讲述@validated注解的功能简介说明

@validated注解的功能

spring validation注解的功能:
      validation用于数据校验,避免不符合要求的数据进入数据库中

spring validation注解的实现思路:
    1.引入依赖
	2.实体上 定义相应的注解
	3.Controller方法上使用@validation注解
例:

引入依赖

<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
</dependencies>
 
//只需要引入 spring-boot-starter-web 依赖即可

<dependency>
	<groupId>org.hibernate</groupId>
	<artifactId>hibernate-validator</artifactId>
</dependency>
<dependency>
	<groupId>com.fasterxml.jackson.core</groupId>
	<artifactId>jackson-databind</artifactId>
</dependency>

启动类

@SpringBootApplication
public class ValidateApp {

    public static void main(String[] args) {
        SpringApplication.run(ValidateApp.class, args);
    }
}

创建需要被校验实体类

@Data
@ApiModel
public class xxxRequest implements Serializable {

    @NotBlank(message = "用户id不能为空")
    private String userId;

    @NotBlank(message = "反馈分主题不能为空")
    private String mainTitle;

    @NotBlank(message = "反馈子主题不能为空")
    private String slaveTitle;

    @NotBlank(message = "问题详情不能为空")
    private String questionDetail;

    private String imgUrl;

    @NotBlank(message = "修改者id不能为空")
    private String editUserId;
}

@Controller中校验数据

@Controller
public class FooController {

    @PostMapping("/save")
    public RestApiResult saveXxx(@RequestBody @Validated xxxRequest req){
        xxxService.refreshXxx(req);
    }

}

JSR常用的校验注解

@Null   被注释的元素必须为 null    
@NotNull    被注释的元素必须不为 null    
@AssertTrue     被注释的元素必须为 true    
@AssertFalse    被注释的元素必须为 false    
@Min(value)     被注释的元素必须是一个数字,其值必须大于等于指定的最小值    
@Max(value)     被注释的元素必须是一个数字,其值必须小于等于指定的最大值    
@DecimalMin(value)  被注释的元素必须是一个数字,其值必须大于等于指定的最小值    
@DecimalMax(value)  被注释的元素必须是一个数字,其值必须小于等于指定的最大值    
@Size(max=, min=)   被注释的元素的大小必须在指定的范围内    
@Digits (integer, fraction)     被注释的元素必须是一个数字,其值必须在可接受的范围内    
@Past   被注释的元素必须是一个过去的日期    
@Future     被注释的元素必须是一个将来的日期    
@Pattern(regex=,flag=)  被注释的元素必须符合指定的正则表达式
 
Hibernate Validator 提供的校验注解 :

@NotBlank(message =)   验证字符串非 null,且长度必须大于 0    
@Email  被注释的元素必须是电子邮箱地址    
@Length(min=,max=)  被注释的字符串的大小必须在指定的范围内    
@NotEmpty   被注释的字符串的必须非空    
@Range(min=,max=,message=)  被注释的元素必须在合适的范围内
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaFramework/Spring/202303/6072.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者