当前位置:   article > 正文

springboot 参数校验(实体类配置实用版)_springboot 实体属性校验

springboot 实体属性校验

1.导入坐标依赖pom.xml

  1. <!--实体类参数校验-->
  2. <dependency>
  3. <groupId>org.springframework.boot</groupId>
  4. <artifactId>spring-boot-starter-validation</artifactId>
  5. </dependency>
  6. <!-- javax.validation -->
  7. <dependency>
  8. <groupId>javax.validation</groupId>
  9. <artifactId>com.springsource.javax.validation</artifactId>
  10. <version>1.0.0.GA</version>
  11. </dependency>

以下是一些常用的注解及其用法:

  1. @Null:表示该字段可以为null。

  2. @NotNull:表示该字段不能为null。

  3. @NotEmpty:表示该字段不能为空。适用于集合、Map、数组等类型。

  4. @NotBlank:表示该字段不能为空或仅包含空白字符。适用于字符串类型。

  5. @Size:表示该字段的大小必须在指定的范围内。适用于集合、Map、数组和字符串等类型。

  6. @Min@Max:表示该字段的值必须在指定的范围内。适用于数值类型。

  7. @DecimalMin@DecimalMax:表示该字段的值必须在指定的范围内。适用于BigDecimal类型。

  8. @Past:表示该字段的值必须在当前日期之前。适用于日期类型。

  9. @Future@FutureOrPresent:表示该字段的值必须在当前日期之后或等于当前日期。适用于日期类型。

  10. @Pattern:表示该字段的值必须匹配指定的正则表达式。适用于字符串类型。

  11. @Email:表示该字段的值必须是有效的电子邮件地址。适用于字符串类型。

  12. @URL:表示该字段的值必须是有效的URL地址。适用于字符串类型。

2.实体类配置(案例)

  1. public class Entry{
  2. @NotNull(message = "用户id不能为空")
  3. @NotBlank(message = "用户id不能为空")
  4. private String userId;//用户id
  5. @NotNull(message = "身份证号不能为空")
  6. @NotBlank(message = "身份证号不能为空")
  7. @Size(min = 15, max = 35, message = "身份证号类型错误")
  8. private String sdCard;//身份证号
  9. }
  1. import javax.validation.constraints.*;
  2. @Data
  3. public class User {
  4. @NotNull(message = "用户名不能为空")
  5. @Size(min = 1, max = 20, message = "用户名长度必须在1到20个字符之间")
  6. private String username;
  7. @NotNull(message = "密码不能为空")
  8. @Size(min = 6, max = 20, message = "密码长度必须在6到20个字符之间")
  9. private String password;
  10. @Past(message = "出生日期必须在当前日期之前")
  11. private Date birthday;
  12. @Email(message = "电子邮件地址无效")
  13. private String email;
  14. }

3.EntryController

  1. @PostMapping("/addEntry")
  2. public Result addVideo(@Valid @RequestBody Entry entry, BindingResult bindingResult){
  3. Result result = new Result();
  4. if (bindingResult.hasErrors()) {
  5. result.setCode(400);
  6. result.setMsg(bindingResult.getFieldError().getDefaultMessage());
  7. return result;
  8. }
  9. return entryService.addEntry(entry);
  10. }

4.测试

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/566494
推荐阅读
相关标签
  

闽ICP备14008679号