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

阜宁网站开发辽宁建设工程信息网登录入口官方

阜宁网站开发,辽宁建设工程信息网登录入口官方,建设网络良好生态心得体会,建设网站需要哪些编程文章目录 概念基本概念常用校验注解 前置内容整合Hibernate Validator快速入门优雅处理参数校验异常其余注解校验自定义校验注解 参考来源 概念 基本概念 Hibernate Validator 是一个参数校验框架#xff0c;可以非常方便地帮助我们校验应用程序的入参#xff0c;实现了参数… 文章目录 概念基本概念常用校验注解 前置内容整合Hibernate Validator快速入门优雅处理参数校验异常其余注解校验自定义校验注解 参考来源 概念 基本概念 Hibernate Validator 是一个参数校验框架可以非常方便地帮助我们校验应用程序的入参实现了参数校验与业务开发的解耦 常用校验注解 Validated 通常作用于Controller的方法的对象参数上标识该对象需要做参数校验Valid 与Validated注解功能类似但它还可作用于要校验的对象参数的引用类型属性上从而实现嵌套校验即对要校验的对象参数的引用类型属性的属性做参数校验NotNull 非空校验但校验字符串时空字符串可验证通过NotEmpty 非空校验但校验字符串时纯空格字符串可验证通过NotBlank 非空校验校验字符串时纯空格字符串不可验证通过Min 整数最小值校验Max 整数最大值校验Size 字符串、集合、数组长度校验Email 邮箱格式校验Pattern 使用正则表达式校验参数 前置内容 本教程基于Spring Boot快速整合Spring MVC和Mybatis-Plus实现基本的增删改查功能这篇文章请读者先阅读这篇文章 整合Hibernate Validator 快速入门 引入maven依赖 !-- Hibernate Validator参数校验 --dependencygroupIdorg.springframework.boot/groupIdartifactIdspring-boot-starter-validation/artifactId/dependency在User类的nickname属性加上NotBlank NotBlank(message 昵称不能为空)private String nickname;添加用户接口使用valid注解 PostMapping(/addUser)ApiOperation(value 添加用户)public boolean addUser(RequestBody Valid User user) {return userService.save(user);}重启并使用Knife4j测试添加用户接口 如下图控制台报了MethodArgumentNotValidException异常并且响应提示也不友好接下来我们需要全局处理一下该异常让前端的提示更加友好 优雅处理参数校验异常 创建参数校验异常提示类 Data public class ValidErrorInfo {private String field;private String errMsg; }创建全局异常处理器 RestControllerAdvice Slf4j public class GlobalExceptionHandler {/*** 参数校验异常处理** param e* return*/ExceptionHandler(MethodArgumentNotValidException.class) // 指定要处理的异常public ListValidErrorInfo handleMethodArgumentNotValidException(MethodArgumentNotValidException e) {// 打印异常信息log.error(参数校验异常, e);// 封装异常结果ListValidErrorInfo errs new ArrayList();BindingResult bindingResult e.getBindingResult();ListFieldError fieldErrors bindingResult.getFieldErrors();fieldErrors.forEach(err - {ValidErrorInfo validErrorInfo new ValidErrorInfo();validErrorInfo.setField(err.getField());validErrorInfo.setErrMsg(err.getDefaultMessage());errs.add(validErrorInfo);});return errs;}}重启并使用Knife4j测试添加用户接口 响应结果输出了友好提示 其余注解校验 在User类的pwd属性加上Size校验密码长度 Size(min 8, max 16)private String pwd;在User类的email属性加上Email校验邮箱格式 Emailprivate String email;在User类的phone属性加上Pattern校验手机号格式 Pattern(regexp 1([345789])\\d{9})private String phone;重启项目测试 其余注解请自行测试 自定义校验注解 如果现有的校验注解不能满足我们的需求我们可以自定义校验注解比如我们自定义一个性别校验注解 创建一个性别校验器 public class GenderValidValidator implements ConstraintValidatorGenderValid, String {Overridepublic boolean isValid(String value, ConstraintValidatorContext context) {ListString genders Arrays.asList(男, 女);return genders.contains(value);} }创建一个校验性别的校验注解 Documented Constraint(validatedBy {GenderValidValidator.class}) // 指定校验器 Target({METHOD, FIELD, ANNOTATION_TYPE, CONSTRUCTOR, PARAMETER, TYPE_USE}) Retention(RUNTIME) public interface GenderValid {String message() default 性别录入必须为男/女;Class?[] groups() default {};Class? extends Payload[] payload() default {}; }在User类的gender属性加上 GenderValid校验性别重启项目测试 参考来源 spring 官网hibernate-validator
http://www.w-s-a.com/news/810918/

相关文章:

  • 表格网站源码wordpress更换网站域名
  • 芜湖做网站多少钱做公司的网站的需求有哪些
  • 玉溪网站建设制作凌风wordpress百度云
  • 专业建网站价格门户网站建设 请示
  • 安徽省省博物馆网站建设佛山公司网站设计
  • 温州专业营销网站公司网络建设规划
  • 做模型常说的d站是什么网站wordpress 繁體
  • 给网站做h5缓存机制获取小程序api
  • 网站开发文档东莞市建设网站首页
  • 公共空间设计网站企业门户网站建设教程
  • 网站建设公司 深圳镇江建设质量监督站网站
  • 网站底部版权怎么做软广告经典案例
  • 网站收录突然全部没有了东莞网站建设公司电话
  • 境外企业网站推广免费ppt元素
  • 2018网站建设行业广东网站seo
  • 网站后台加密云服务器2008做网站
  • dw制作一个环保网站模板下载吉安网站建设收费
  • 深圳珠宝网站设计北京高端网站建设优势
  • 合肥企业制作网站wordpress创建网站
  • 织梦网站开发兼职wordpress 中间截取缩略图
  • 南通制作网站旅游搭建网站
  • 专业做商铺的网站个人网页html模板完整代码
  • 什么网站做美食最好最专业关键词推广是什么意思
  • 自助建设网站软件网站导航网站可以做吗
  • 网站模板放哪长沙网站优化分析
  • 泉州网站建设价钱网站模板素材
  • 南通网站托管js建设网站外网
  • 成都企业网站公司wordpress内页模板
  • 58同城建网站怎么做wordpress评论显示数字ip
  • 免费制作论坛网站模板免费下载北京网站制作长沙