首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

前端校验和后端校验的区别和优缺点

作为一个程序员,在平时的编程过程中,我们肯定会接触过数据校验。今天我们来讨论一下前端校验和后端校验的区别与联系。有这么一句话,叫做前端校验防君子,后端校验防小人。

通常来说,后端校验比前端校验更安全,更可靠,前端校验可以增加用户体验,一般来说,在前端校验的东西在后端也必须校验(比如登陆用户名、密码),有些东西在前端就可以校验,比如:字符串长度、邮箱格式、手机号码等等,没必要提交到后端,增加服务器的压力,正常情况下,前端校验的东西,最好后端都在校验一次,但在安全性方面,后端略胜一筹。

举个例子:比如说用bootstrap框架做的一个简单的用户新增页面,假设我们只做了前端检验,用户可以通过浏览器的控制台来人为的修改前端代码,如下图,虽然我们的邮箱格式不正确,但可以通过在控制台修改前端代码,人为地把数据插入到页面,假如我们在后台做了校验,就可以避免这种情况的发生。

这就是前面讲的,前端校验是防君子不妨小人的。后端校验可以防止接口被私自调用导致破坏数据库结构;避免有人模拟浏览器行为直接给服务器发请求。但前端校验便于用户纠正(快速反馈),并且减少服务器压力、节省流量(减少无意义的请求),主要对用户友好。各有优缺点。

后端校验的方法

1、可以在通过引入JSR303的jar,然后在实体类上加上相应的校验,比如正则表达式即可,也很方便。

2、接口方法参数前添加注解@Validated

3、对数据库中的相应字段进行校验,比如建立主外键约束、控制字段长度、是否为空、是否可重复等。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20190111G05MSA00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券