为了账号安全,请及时绑定邮箱和手机立即绑定

关于javaweb后台数据校验的问题

标签:
Java

         相信很多刚开始写javaweb项目的同学,在后台数据校验上面,遇到过很多不开心的事情,比如测试提了好多bug都是他们通过postman直接调用接口(不存在前台校验),然后就各种乱写参数,导致各种bug痛不欲生,你就去反驳说什么前台肯定要校验的啊,然后就会乖乖的被人家怼回来,这个时候作为小白的我们,对一个个的参数开始进行一系列的判断,比如:非空,是否是数字,null,长度等等,然后你就会发现,有的接口带的参数特别的多,要是全用这种判断,然后返回自定义异常,或者统一的自定义异常你就会特别痛苦。

                                                 https://img1.sycdn.imooc.com//5cc056b700010b4702400240.jpg

    该用什么来解决呢,来看一下这个jar包

javax.validation:validation-api:2.0.1.Final.jar

        这个包的好用之处在于,不用把校验放在保存,或者修改的方法里面,而是直接写在前端传来的数据模型中,直接看使用案列

  1.@NotNull

@NotNull(message = "ID不能为空")
private Long xxid;

 2. @NotBlank

@NotBlank(message = "证件编号不能为空")
private String idNo;

3. @Pattern

@Pattern(regexp = "^[123]{1}$",
message = "证件类型[1身份证,2护照,3军官证]")
private String idType;

4. @Size

@Size(min = 2,max = 10,message = "姓名的字数最少2个字,最大10个字")
private String name;

5. @Max @Min

@Max(value = 20,message = "年份最长20年")
@Min(value = 0,message = "年份最少0年")
private Integer xxyear;

6. @PositiveOrZero

@PositiveOrZero(message = "价格必需大于0")
private BigDecimal price;

这里给大家举出来的例子,只是其中的一部分,

https://img1.sycdn.imooc.com//5cc05afd00016c7602300480.jpg

这里面能看到还有很多可以供大家去使用,有了这个大家就不用在方法中写一大篇校验数据的判断了。



    第一次写这种文章,虽然可能大家都会,是我自己不会而已,但是希望通过这种方式,让自己慢慢成长,程序路漫漫,我陪自己成长!







点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消