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

网站建设课程心得体会企业培训考试系统

网站建设课程心得体会,企业培训考试系统,如何做双语网站,咸宁网页设计Validation 官网 https://beanvalidation.org/ 常见注解 Bean Validation中定义的注解: 注解详细信息Null被注释的元素必须为 nullNotNull被注释的元素必须不为 nullAssertTrue被注释的元素必须为 trueAssertFalse被注释的元素必须为 falseMin(value)被注释的元素…

Validation 官网

https://beanvalidation.org/
在这里插入图片描述

常见注解

Bean Validation中定义的注解:

注解详细信息
@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(value)被注释的元素必须符合指定的正则表达式

Hibernate validator 在JSR303的基础上对校验注解进行了扩展,扩展注解如下:

注解详细信息
@Email被注释的元素必须是电子邮箱地址
@Length被注释的字符串的大小必须在指定的范围内
@NotEmpty被注释的字符串的必须非空
@Range被注释的元素必须在合适的范围内

导包

您需要在 pom.xml 文件中添加以下依赖项

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

实体类

您还需要使用验证注解来定义实体类。例如:

@Data
@AllArgsConstructor
@NoArgsConstructor
public class User {private String name;private Integer age;private String email;
}

DTO 类

然后创建一个相应的 DTO 类,并在其中使用验证注解,比如 UserDTO:

@Data
@AllArgsConstructor
@NoArgsConstructor
public class UserDTO {@NotBlank(message = "name不能为空或者空格")@Size(min=3, max=9,message = "长度在3-9之间")private String name;@NotNull(message = "age不能为空")@Max(value=60,message = "年龄最大60")@Min(value=18,message = "年龄最小18")private Integer age;@NotNull@Email(message = "邮箱格式不正确")private String email;
}

Controller控制器

在控制器中,您可以使用 @Validated 注解为请求体启用验证。例如:

@RestController
public class UserController {@PostMapping("/add")public String add(@Validated @RequestBody UserDTO userDTO) {User user = new User();BeanUtils.copyProperties(userDTO, user);return "注册成功";}
}

全局异常配置类

要全局处理验证错误,您可以使用 @RestControllerAdvice 和 @ExceptionHandler 注解创建一个全局异常处理器。例如:

@RestControllerAdvice
@Component
public class GlobalExceptionHandler {@ExceptionHandler(MethodArgumentNotValidException.class)public Object handleMethodArgumentNotValidException(MethodArgumentNotValidException e) {// 获取异常信息BindingResult bindingResult = e.getBindingResult();List<ObjectError> allErrors = bindingResult.getAllErrors();// 构建返回结果Map<String, Object> result = new LinkedHashMap<>();result.put("code", "400");result.put("message", "参数校验失败");Map<String, Object> errors = new LinkedHashMap<>();allErrors.forEach(error -> errors.put(((FieldError) error).getField(), error.getDefaultMessage()));result.put("errors", errors);return result;}
}

启动类

用来启动web项目

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

启动项目

postman测试

用户名不合法

{   "name":"","age":20,"email":"奇遇少年@163.com"
}

在这里插入图片描述

年龄不合法

{   "name":"奇遇少年","age":10,"email":"奇遇少年@163.com"
}

在这里插入图片描述

邮箱格式不合法

{   "name":"奇遇少年","age":20,"email":"奇遇少年"
}

在这里插入图片描述

数据正确,注册成功

{   "name":"奇遇少年","age":20,"email":"奇遇少年@163.com"
}

在这里插入图片描述

http://www.hkea.cn/news/804458/

相关文章:

  • 佛山新网站制作公司网页制作成品模板网站
  • 校园网站建设的意见企业管理培训课程网课
  • 郑大远程教育动态网站建设seo优化关键词排名
  • 做logo什么网站昆明百度关键词优化
  • 怎样做省钱购物网站sem推广代运营
  • 英文网站开发公司万网阿里云域名查询
  • 做调查问卷网挣钱的网站新闻 今天
  • 网站建设工作小组在线建站平台免费建网站
  • 可以发广告的网站湖南seo推广系统
  • 大丰网站建设哪家好成都seo
  • 学校网站建设项目的wbsseo交流qq群
  • 筑梦网站建设西安百度竞价开户
  • 个体营业执照可以做网站搞推广吗推广网站制作
  • 公共交通公司网站建设方案移动慧生活app下载
  • 国内开源代码网站搜了网推广效果怎么样
  • html5 metro风格网站模板今日新闻事件
  • 网站不在首页显示出来做网络推广
  • 上海网站seo公司网页推广平台
  • 网站服务器租用价格表百度怎么发布自己的广告
  • 经纪人做网站技巧搜索引擎入口yandex
  • 教育网站制作哪家服务好全球外贸采购网
  • 响应式网络网站源码百度关键词查询网站
  • 南京网站制作设计公司网络运营团队
  • 阿里巴巴上怎样做自己的网站seo网站优化网站编辑招聘
  • 网站做付费推广都需要问什么网络热词2022
  • 给男票做网站表白的软件产品市场推广计划书
  • 西安网站制作定制怎么制作自己的个人网站
  • wordpress 如何移动端盐城seo优化
  • asp.net 制作网站开发百度竞价排名软件
  • 百度爱采购推广平台天津网络推广seo