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

重庆游戏网站开发公司qq引流推广软件哪个好

重庆游戏网站开发公司,qq引流推广软件哪个好,太原做响应式网站设计,佛山建设银行社会招聘网站问题复现 在构建 Web 服务时,我们一般都会对一个 HTTP 请求的 Body 内容进行校验,例如我们来看这样一个案例及对应代码。当开发一个学籍管理系统时,我们会提供了一个 API 接口去添加学生的相关信息,其对象定义参考下面的代码&…

问题复现

  • 在构建 Web 服务时,我们一般都会对一个 HTTP 请求的 Body 内容进行校验,例如我们来看这样一个案例及对应代码。
  • 当开发一个学籍管理系统时,我们会提供了一个 API 接口去添加学生的相关信息,其对象定义参考下面的代码:
    import lombok.Data;
    import javax.validation.constraints.Size;
    @Data
    public class Student {@Size(min = 1, max = 10)private String name;private short age;
    }
    
  • 如上代码所示,我们想针对学生的姓名进行一个判断,不能为空,并且长度为1-10。
  • 然后,我们以下面的 JSON Body 做测试:
    {"name": "","age": 10,"phone": {"number":"12306"}
    }
    
  • 测试结果符合我们的预期,但是假设更进一步,用下面的 JSON Body(去除 name 字段)做测试呢?
    {"age": 10,"phone": {"number":"12306"}
    }
    
  • 我们会发现校验失败了。这结果难免让我们有一些惊讶,也倍感困惑:@Size(min = 1, max = 10) 都已经要求最小长度为 1 了,难道还只能约束空字符串(即“”),不能约束 null?

案例分析

  • 如果我们稍微留心点的话,就会发现其实 @Size 的 Javadoc 已经明确了这种情况,参考下图:
    在这里插入图片描述
  • 如图所示,“null elements are considered valid” 很好地解释了约束不住 null 的原因。当然纸上得来终觉浅,我们还需要从源码级别解读下 @Size 的校验过程。
  • 这里我们找到了完成 @Size 约束的执行方法,参考 SizeValidatorForCharSequence#isValid 方法:
    public boolean isValid(CharSequence charSequence, ConstraintValidatorContext constraintValidatorContext) {if ( charSequence == null ) {return true;}int length = charSequence.length();return length >= min && length <= max;
    }
    
  • 如代码所示,当字符串为 null 时,直接通过了校验,而不会做任何进一步的约束检查。

问题修正

  • 关于这个问题的修正,其实很简单,我们可以使用其他的注解(@NotNull 或 @NotEmpty)来加强约束,修正代码如下:
    @NotEmpty
    @Size(min = 1, max = 10)
    private String name;
    
  • 完成代码修改后,重新测试,你就会发现约束已经完全满足我们的需求了。
http://www.yidumall.com/news/1969.html

相关文章:

  • 建设商城网站seo优化方案案例
  • 网站首页被降权怎么做电商网站链接买卖
  • 如何建设网站论坛百度建站官网
  • 做品牌网站找谁营销软件商城
  • 站外推广怎么做seo网上培训课程
  • 电子商务网站建设与维护试卷答案网站运营推广方式
  • 正品海外购网站有哪些互联网营销师培训
  • 泉州做网站建设经典模板网站建设
  • 做网站需要用到什么谷歌seo 外贸建站
  • 工信和信息化部网站网络优化工程师
  • wordpress to微博关键词怎么优化到百度首页
  • 手机可以制作网站吗哈尔滨推广优化公司
  • photoshop网页版入口百度seo简爱
  • 上海哪家公司做网站比较好网站优化费用报价明细
  • 百度快照排名seo咨询服务价格
  • 网络培训总结谷歌优化工具
  • 公司怎样做网站百度一下百度首页
  • 做网站怎么qq邮箱验证整站优化 快速排名
  • 国内网站开发语言天津网络优化推广公司
  • 香港网站建设展览公司培训课程有哪些
  • 郑州网站推广费用微信营销推广
  • 济南网站开发企业友情链接交易网
  • 投资公司注册资金需要多少seo关键词优化报价
  • 东莞营销网站建设关键词查找
  • 做童装在哪个网站找客户凡科建站登录入口
  • 移动互联网开发公司关键词排名快照优化
  • 广东省人防工程建设网站国内5大搜索引擎
  • 怎么查询网站是哪家公司做的电商培训基地
  • 网站建设好推荐无锡今日头条新闻
  • 宁德工程建设监督网站百度怎么发布广告