Struts2之server端验证
声明:在我的教程中有些东西,没有提及到。不是我不知道,而是在我个人来看对你们不是太重要的知识点。你们在看课本时有了解到即可。我不会面面俱到的都给你们提及。我写博文的目的是把我这一年的开发经验通过学习ssh的方式教给你们。
之所以在此声明,是希望某些朋友明白我写博文的目的。我不是老师,我也是学生。
Understand?
呵呵,开个玩笑,回归正题。
一、学习重点:server端的验证。struts2提供了两种方式,一个是action中手动编码验证,还有一个就是配置文件验证。能够说。仅仅要是讲struts2的书,都有案例,仅仅要按着样例是非常easy配置的。
注意:不管哪种验证方式。在验证出错后,struts2会抛一个input的结果,所以在配置action中要加入一个name为input的result。
因为这一知识点的重要性在我个人看来不是太重要。所以就不再提供项目演示。
二、经验分析:做系统我们首要注重的是用户体验,假设你的注冊页面要填非常多信息,你点击提交后,server验证失败,最起码你要又一次输入password和验证码,一次还行,两次,三次预计用户就得愤慨了,所以用户体验来讲,client验证还是首选。所以server验证事实上没什么讲的必要性。但为了那些处女座的朋友考虑还是讲下吧。
三、经验之谈:
a) 对于刚開始学习的人。尤其是哪些看视频学习的同学。不要计较视频中老师所讲的一些代码编写方式。不是说不遵守老师们的编写方式。而是由于刚開始学习的人以实现功能为目的。在功能晚上,代码手写量足够的情况下。再注意代码的编写规范。
b) 事实上每一个公司都有自己的编码规范,就是功能的实现方式。
不是说。你想怎么编写即可。
比如:struts的配置文件,不可能你每一个请求都要相应一个action,也不可能让你在每一个action上直接使用method指定调用方法,这一点是肯定的。这样会非常easy导致代码混乱的。当然。我说这一点不是让刚開始学习的人严格遵守视频中老师的编码方式。由于各大公司的编码方式不同,所以我们更不用计较这一点。对于刚開始学习的人。实现功能为第一。
c) 有人说,server校验有必要吗,js在前端校验不即可了。
事实上这一点对于每位刚開始写项目的朋友一样。当初我開始写“爱尚合伙人”时,也是和你们想的一样,server端验证要用,js也要用,这样最起码心里会感觉安全些。
事实上如今非常多项目仅仅有client的js验证。讲个现实点的。假设一个黑客想攻击你的站点。你认为你一个server端验证能防止的了吗。
所以我们有时候要学会取舍。
框架的功能说简单些就是它把插件的功能做成了集成的方式,它为了总体的完好性,必须的整合全部必备功能。所以有些功能也不是说最好的。非得要用,取舍有度,该舍就舍就OK。
四、每日一乐:
A:我叫你一声你敢答应吗
B:有什么不敢,你叫啊?
A:儿子
B:……靠!
终于解释权归爱尚合伙人全部,转载请注明出处。
Struts2之server端验证的更多相关文章
- LoRaWAN协议(三)--Server端数据协议
LoRaWAN Server 端架构 LoRaWAN 的server包括 NS(Network server).AS(application server).CS(Custom server).... ...
- 微信小程序Server端环境配置
主要内容:1. SSL免费证书申请步骤2. Nginx HTTPS 配置3. TLS 1.2 升级过程 微信小程序要求使用 https 发送请求,那么Web服务器就要配置成支持 https,需要先申请 ...
- Zabbix(二) : Zabbix Server端配置文件说明
Zabbix Server端配置文件说明 # This is a configuration file for Zabbix Server process # To get more informat ...
- Zabbix Server端配置文件说明
zabbix作为运维邻域不可缺少的一员,它的各种文档可是数不胜数啊,但是关于配置文件的解释与说明就有点少.这里列出zabbix配置文件篇之zabbix_server. Zabbix Server端配置 ...
- zabbix 3.2.2 server端(源码包)安装部署 (一)【转】
环境准备: 操作系统 CentOS 6.8 2.6.32-642.11.1.el6.x86_64 zabbix server 172.16.10.150 zabbix agent 172.16.10. ...
- Zabbix Server端配置文件
Zabbix Server端配置文件说明 # This is a configuration file for Zabbix Server process # To get more informat ...
- C#实现svn server端的hook
目标 要做的东东呢,就是在向svn提交文件的时候,可以再server端读到所有提交文件的内容,并根据某些规则验证文件的合法性,如果验证失败,则终止提交,并在svn的客户端上显示错误信息. 准备工作 ...
- Drcom账户管理Server端解说
https://www.github.com/xiyouMc 首先今天要讲的是针对Drcom查询账户URL的解析和抓取数据. Drcom是大学生宿舍上网普遍使用的联网client,然而对于自己账 ...
- 利用函数计算构建微信小程序的Server端
10分钟上线 - 利用函数计算构建微信小程序的Server端-博客-云栖社区-阿里云 https://yq.aliyun.com/articles/435430 函数计算 读写 oss import ...
随机推荐
- 在ASP.NET MVC中使用typeahead.js支持预先输入,即智能提示
使用typeahead.js可以实现预先输入,即智能提示,本篇在ASP.NET MVC下实现.实现效果如下: 首先是有关城市的模型. public class City { public int Id ...
- CentOS MongoDB 高可用实战
原文:https://www.sunjianhua.cn/archives/centos-mongodb.html 一.MongoDB 单节点 1.1.Windows 版安装 1.1.1 获取社区版本 ...
- ios测试宏指令出错:“Expected identefier”
写了一个简单的测试宏指令,然后在下面代码中报错,不知道怎么修复?谢谢 #define test(condition) do{\ if (condition) {\ //// <-----Expe ...
- [shiro学习笔记]第四节 使用源码生成Shiro的CHM格式的API文档
版本号为1.2.3的shiro API chm个事故文档生成. 获取shiro源码 编译生成API文档 转换成chm格式 API 获取shiro源码 shiro官网: http://shiro.apa ...
- maven + sonar, gradle + sonar
sonar installation and configuration Download sonar http://downloads.sonarsource.com/sonarqube/ Deco ...
- Unity Shader _Time 的单位
名称 类型 说明 _Time float4 t 是自该场景加载开始所经过的时间,4个分量分别是 (t/20, t, t*2, t*3) _SinTime float4 t 是时间的正弦值,4个分量分别 ...
- 探讨一下Java单例设计模式
所谓单例模式,简单来说,就是在整个应用中保证只有一个类的实例存在.就像是Java Web中的application,也就是提供了一个全局变量,用处相当广泛,比如保存全局数据,实现全局性的操作等. 1. ...
- git合并的时候,冲突问题Merging is not possible because you have unmerged files
在做项目工作的时候,同事修改了代码一个cpp代码,我同样也修改了代码,两人代码冲突了,提交之后,他代码git自动合并,并提示: [master| MERGEING]$ git merge my_new ...
- Java-----隐藏手机号中间四位,身份证号码中间几位
phone.replaceAll("(\\d{3})\\d{4}(\\d{4})","$1****$2");152****4799 idCard.replace ...
- Flash对象插入到网页中的3px问题
我记得我已经遇到过,不过今天又遇到了,而且浪费了大量的时候在上面,甚至怀疑自己写的脚本有问题,花了几乎一个下午来调试这个问题.最后发现是样式导致的- 公司里有很多网页游戏,之前是项目多,抄来抄去,JS ...