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

电商网站现状分析宁乡小程序开发

电商网站现状分析,宁乡小程序开发,百度公司名称,天猫店买卖网站1.validation参数验证工具 1.1.validation-api技术链 validation-api是一个Java的数据校验规范#xff0c;它定义了一套用于校验Java Bean的API。它是JSR 303规范的一部分#xff0c;也被称为Bean Validation。validation-api提供了一系列的注解#xff0c;用于在Java类的…1.validation参数验证工具 1.1.validation-api技术链 validation-api是一个Java的数据校验规范它定义了一套用于校验Java Bean的API。它是JSR 303规范的一部分也被称为Bean Validation。validation-api提供了一系列的注解用于在Java类的字段、方法参数和方法返回值上添加校验规则。这些注解包括NotNull、Size、Min、Max等等每个注解都有特定的校验规则用于验证数据是否满足特定的条件。 Hibernate Validator是validation-api的唯一实现。除了提供注解和校验规则Hibernate Validator还提供了一系列的工具类和接口用于处理校验结果和错误信息。它可以将校验结果封装为一个Validator对象并提供了各种方法来获取校验结果、错误信息和错误类型。Hibernate Validator还支持国际化可以根据不同的语言环境显示相应的错误信息。它还提供了可自定义的错误消息模板可以根据实际需求来设置错误消息的格式和内容。 spring-boot-starter-validation是一个Spring Boot的starter用于集成和简化Spring框架中的数据校验功能。spring-boot-starter-validation通过自动配置的方式将Hibernate Validator集成到了Spring Boot的应用中从而简化了数据校验的配置过程。通过引入这个starter我们可以在应用中使用标准的注解来进行数据校验而不需要手动配置和引入相关的依赖项。 1.2.validation常用注解 validation-api提供了一些常用的注解 NotNull用于校验字段或方法参数的值不能为空NotEmpty用于校验字符串、集合或数组的值不能为空且长度不能为0NotBlank用于校验字符串的值不能为空或只包含空格Size用于校验字符串、集合或数组的长度是否在指定范围内Min用于校验数字的值是否大于等于指定的最小值Pattern用于校验字符串的值是否匹配指定的正则表达式Email用于校验字符串的值是否符合Email格式DecimalMin 用于校验数字的值是否大于等于指定的最小值可以指定最小值的精度 Hibernate Validator 提供了一些拓展注解用于在 validation-api 注解基础上实现更复杂的数据校验。以下是一些常见的 Hibernate Validator 拓展注解部分 URL用于校验字符串的值是否符合 URL 地址格式CreditCardNumber用于校验信用卡号的格式是否正确Currency用于校验货币代码是否正确ISBN用于校验国际标准书号ISBN是否正确Range用于校验数字的值是否在指定范围内 1.3.代码示例 对于一个请求参数根据需求进行注解申明 import jakarta.validation.constraints.DecimalMax; import jakarta.validation.constraints.DecimalMin; import jakarta.validation.constraints.NotEmpty; import jakarta.validation.constraints.Size; import lombok.Data;Data public class ReqCreateCatalog {NotEmptyprivate String gameId;DecimalMin(value 1)DecimalMax(value 2)private int type;//目标目录Size(max 50, message 名称长度不能超过{max}个字符)private String catalog; } controller方法参数增加Valid注解 PostMapping(value /createCatalog) public Response create(Valid RequestBody ReqCreateCatalog req) {} 如果请求故意把gameId参数设为空  则程序输出异常日志 2. 全局异常处理器 2.1.使用RestControllerAdvice拦截异常 上面的例子可以看出当验证器抛出MethodArgumentNotValidException异常如果没有一个全局异常捕获器对其进行捕获并进行转义前端得到的响应很奇怪。 SpringMVC使用RestControllerAdvice注解对全局异常进行拦截例如下面的代码 也可以使用ControllerAdvice注解但每个方法还需要添加ResponseBody注解 Slf4j RestControllerAdvice public class GlobalExceptionHandler {ExceptionHandler(MethodArgumentNotValidException.class)public ResponseObject handleMethodArgumentNotValidException(MethodArgumentNotValidException e, HttpServletRequest request) {String requestURI request.getRequestURI();log.error(请求地址{},参数校验失败{}, requestURI, e.getMessage());return Response.fail(I18nConstants.COMMON_ILLEGAL_PARAMS);}ExceptionHandler(BusinessRequestException.class)public ResponseObject handleBusinessRequestException(BusinessRequestException e, HttpServletRequest request) {String requestURI request.getRequestURI();log.error(请求地址{},权限码校验失败{}, requestURI, e.getMessage());return Response.fail(e.getErrorCode());}ExceptionHandler(value Exception.class)public ResponseObject handleException(Exception e, HttpServletRequest request) {LoggerUtil.error(, e);return Response.fail(I18nConstants.COMMON_INTERNAL_ERROR);}} 2.2.异常拦截方法有以下几个注意地方 方法名必须以handle开头需要添加ExceptionHandler注解注解的值是一个异常类数组当value为空则默认取方法的异常参数类型当程序触发了一个异常如果在全局异常拦截器找不到映射则会递归找它的父异常则到父类Throwalbe为止如果多个RestControllerAdvice示例绑定了同一个异常程序不会报错但只有一个拦截器起作用。  2.3.使用案例 使用全局异常拦截器重新发起请求可以看到客户端输出 {success: false,message: 1003, //I18nConstants.COMMON_ILLEGAL_PARAMSdata: null }
http://www.hkea.cn/news/14501350/

相关文章:

  • 论文个人网站建设网站建设错误代码50019
  • wordpress自动采集导入自己的网站做优化怎么设置缓存
  • 购物网站怎么建设徐州如何选择网站建设
  • 重庆开县网站建设报价京东网上购物官方网站
  • 免费做qq互赞网站湛江做网站seo的
  • 局域网网站建设上位机软件开发工具
  • 怎么增加网站的外链软件开发的流程
  • 网站如何做子域名深圳推广公司介绍
  • 微信 微网站网站备案 和 icp
  • 摄影师如何做网站如何查询网站的注册信息查询
  • 网页设计和网站建设书企业网站前端模板下载
  • 淘客怎么做网站单页旺旺号查询网站怎么做
  • 实力网站建设东莞好的网站建设公司
  • 做网站什么字体比较好看管理咨询顾问
  • 快站wordpress贵阳app开发公司
  • 响应式网站模板免费下载桂林学校网站制作
  • 做一个公司网站需要多少钱网站建设征求意见表
  • 怎么网站做二维码网站建设 上海网
  • 启东做网站环境网站模板
  • 顺义顺德网站建设网站优化流程
  • 福州省建设局网站erp软件开发定制
  • 做网站1500全包俄文网站开发
  • 网站制作公司制作网站遵义创意网站设计
  • 中国建设企业银行官网站网站建设核心技术创新点
  • 南京做网站哪家好html做音乐网站模板
  • 网站建设策划书心得大数据平台的搭建
  • 网站建设维护面试可爱风格网站
  • h5模板网站模板专业做制作网站
  • 传奇霸主网页版seo网站地图怎么做
  • 建设企业网站制作公司常州市建设局网站资质