当前位置: 首页 > news >正文

网站代理被抓山东东营信息网

网站代理被抓,山东东营信息网,开发软件是什么专业,网页制作app软件Spring Validation是Spring框架中用于数据校验的核心模块&#xff0c;通过注解简化数据校验逻辑。 1. 依赖引入&#xff08;SpringBoot项目&#xff09; Spring Boot项目&#xff1a;自动包含spring-boot-starter-validation <dependency><groupId>org.springfra…

Spring Validation是Spring框架中用于数据校验的核心模块,通过注解简化数据校验逻辑。

1. 依赖引入(SpringBoot项目)

Spring Boot项目:自动包含spring-boot-starter-validation

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

2. 基本使用

在Spring MVC的Controller中使用@Valid和@Validated触发校验。

示例代码:

@PostMapping("/users")
public ResponseEntity<?> createUser(@RequestBody @Valid User user, BindingResult result) {if (result.hasErrors()) {// 处理校验错误return ResponseEntity.badRequest().body(result.getAllErrors());}// 保存用户return ResponseEntity.ok(userService.save(user));
}
  • @Valid:触发校验
  • @Validated:Spring的扩展,支持分组校验
  • BindingResult:保存校验结果,需紧跟被校验参数

3. 常用校验注解

以下是Bean Validation内置的校验注解:

注解说明
@NotNull值不能为null
@NotEmpty字符串/集合不能为空
@NotBlank字符串必须包含非空格字符
@Size(min, max)字符串/集合长度在范围内
@Min(value)数字最小值
@Max(value)数字最大值
@Email校验邮箱格式
@Pattern(regexp)正则表达式匹配
@Positive必须为正数
@Future日期必须是未来时间

示例实体类:

public class User {@NotBlank(message = "用户名不能为空")private String username;@Size(min = 6, max = 20, message = "密码长度需在6-20位")private String password;@Email(message = "邮箱格式不正确")private String email;// Getters and Setters
}

4.分组校验

通过分组实现不同场景的差异化校验规则。

定义分组接口:

public interface CreateGroup {}
public interface UpdateGroup {}

在实体中使用分组:

public class User {@Null(groups = CreateGroup.class, message = "创建时ID必须为空")@NotNull(groups = UpdateGroup.class, message = "更新时ID不能为空")private Long id;// 其他字段...
}

在Controller中指定分组:

@PostMapping("/users")
public ResponseEntity<?> createUser(@Validated(CreateGroup.class) @RequestBody User user) {// ...
}

5. 自定义校验

步骤1:定义注解

@Target({FIELD, PARAMETER})
@Retention(RUNTIME)
@Constraint(validatedBy = PhoneValidator.class)
public @interface Phone {String message() default "手机号格式不正确";Class<?>[] groups() default {};Class<? extends Payload>[] payload() default {};
}

步骤2:实现校验逻辑

public class PhoneValidator implements ConstraintValidator<Phone, String> {@Overridepublic boolean isValid(String phone, ConstraintValidatorContext context) {return phone != null && phone.matches("^1[3-9]\\d{9}$");}
}

步骤3:使用自定义注解

public class User {@Phoneprivate String phone;
}

http://www.dtcms.com/a/485503.html

相关文章:

  • 济南网站建设系统青岛栈桥门票多少钱一张
  • 做网站都得会什么技术二手闲置平台网站怎么做
  • 河源建设局网站珠海特价做网站
  • 做告状网站拍摄宣传片的流程简要
  • 南京网站建设案例wordpress回复微信查看
  • 沂水建设局网站成都住建局官网报名入口
  • 长沙优化网站分析html的网站案例
  • 公司建立网站流程图wordpress 影视源码
  • 遵义建立公司网站的步骤网站建站模式
  • 南宁企业网站制作哪家好wordpress上传文件功能
  • 重庆公司核名在哪个网站制作企业网站的报告
  • 南昌做网站开发的公司哪家好服务器上面建设网站
  • 镇江海绵城市建设官方网站交易链接大全
  • 佛山外贸网站建设修改wordpress页脚信息
  • 网站建设主流技术网站开发量
  • 珠海营销网站建设合肥瑶海区地图全图高清版
  • 学习网页制作的网站专业网站定制价格便宜
  • 网站建设运行情况简介建设银行网站优点
  • 做最好的win7系统下载网站拉新十大推广app平台
  • 南宁本地网站设计南昌网站建设服务
  • 深圳做h5网站设计淘宝客怎么自己做网站及APP
  • 相亲网站建设策划书范文软件工程培训班出来好就业吗
  • 杭州北京网站建设公司如何知道一个网站做的什么推广
  • 建筑设计图用什么软件桂林网站优化注意事项
  • 1688网站怎么做分销一般家庭装修照片
  • 中卫网站设计公司招聘黄石网站建设流程
  • 为什么自己做不出一个好网站网站规划与网页设计案例
  • 如何做cad图纸模板下载网站专业的网站设计师
  • 怎么做博客网站代码改wordpress地址
  • 岚山区建设局网站网推公司招聘