- 1、本文档共21页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第16章 Struts 2高级应用.ppt
第16章 Struts 2高级应用 16.1 Struts 2内建的类型转换器 16.1.1 内建转换器介绍 16.1.2 基本数据类型转换器 16.1.3 基本数据类型的封装类转换器 16.1.4 数组类型转换器 16.1.5 集合类型转换器 16.2 服务器端校验 16.2.1 服务器端校验的重要性 16.2.1 服务器端校验的重要性 16.2.2 完成服务器端输入校验 16.2.3 使页面保留提交信息 16.2.4 使用addFieldError来添加错误信息 16.2.5 输入校验与类型转换关系 16.3 使用校验框架完成输入校验 16.3.1 完成输入校验 16.3.2 增加客户端校验 16.3.3 国际化提示信息 16.3.4 客户端校验与国际化问题 16.3.5 校验短路 16.4 小结 1-* 北京源智天下科技有限公司 联系方式: 本章将介绍Struts 2框架内建的类型转换器,如基本数据类型转换器、数组类型转换器以及集合转换器。还将详细介绍服务器端校验并介绍使用校验框架来完成输入校验。 通过本章的学习,读者应该能够完成如下几个目标。 熟练使用Struts 2内建的类型转换器 理解服务器断校验的重要性 熟练使用addFieldError来添加校验错误信息 熟练使用Struts 2校验框架完成输入校验 Struts 2为常用的数据类型提供了内建的类型转换器,所以根本不用自定义转换器。对于内建的转换器,Struts在遇到这些类型时,会自动去调用相应的转换器进行类型转换。下面来看Struts 2提供了哪些内建的类型转换器,以及这些内建类型转换器的使用。 Struts 2为常用的数据类型提供了内建的类型转换器,大部分情况下可以不用自定义转换器。对于内建的转换器,Struts在遇到这些类型时,会自动去调用相应的转换器。 下面列举了全部的内建转换器,具体如下。 基本数据类型以及其封装类。 日期类型 集合(Collection)类型 集合(Set)类型 数组类型 Struts 2的内建转换器中包含一个基本数据类型转换器,通过它能自动的完成基本数据类型到字符串的转换。 Struts 2不但提供了基本数据类型转换器,同时也提供了基本数据类型封装类的转换器。其用法和基本数据类型基本一样,只需修改业务控制器中的属性为对应的封装类就可以了。 Struts 2还提供了一个数组类型的转换器。这个转换器非常有用,比如多个表单元素的name属性相同,那么提交的参数就不再是字符串而是一个字符串数组。通过Struts2提供的数组类型的转换器就能很方便的将多个相同name属性的表单元素的值封装到Action中的一个数组中。 上面介绍的是通过字符串数组来接受参数值,同样也可以通过集合类型来接受参数值。Struts 2提供的集合类型转换器,会将参数值自动赋值到集合类型属性中。 如果一个Web应用仅有客户端验证那是不够的。攻击者这可以绕过客户端校验直接进行非法输入,这样可能会引起系统的异常,所以必须加上服务器端的验证。下面来看如何添加服务器端校验。 如果为注册页面添加了客户端校验,那么用户输入的信息不合法则无法提交。这是这里要注意的话,使用JavaScript增加客户端校验仅仅使得非法的数据无法提交,但是一些侵入者完成可以采用其他的方式来进行提交。下面来看如何绕过这些JavaScript校验代码? 首先可以直接把这个注册页面下载下来,然后通过删除那些JavaScript代码,再修改表单的提交地址。这样的话,就算是输入不合法的信息,客户端校验也起不了作用了,因为连JavaScript代码都被删除掉了。 通过一种如此简单的方法就可以绕过这些JavaScript校验代码。那些侵入者很可能使用更加高级的手段来绕过这些JavaScript代码,从而直接提交非法的数据。要避免这种情况就必须添加服务器端校验,服务端校验是整个Web应用中最重要的一道防线。用户使无法直接接触到服务器端代码的,这样的话就算是客户端校验被人绕过,仍然能够通过服务器端校验来阻止用户的非法输入。服务器端校验对于系统的安全性、完整性、健壮性起到了至关重要的作用。 那是不是客户端校验根本就没有什么意义了呢?其实不是,因为并不是每个用户都有这样恶意侵入的想法。大部分的用户都是采用的正常的输入,使用客户端校验能够过滤掉用户的误操作。如果没有客户端校验,那么就算用户只是一个错误的操作,服务器端就要对其输入的信息进行处理并返回错误提示,这样会大大增加服务器端的负载。客户端校验就像是一把锁,能够防君子但是不能防小人。同样客户
您可能关注的文档
最近下载
- 一种电子级硝酸的制备方法.pdf VIP
- 招标文件评分要点深度分析.docx VIP
- 电力行业集团数字化转型信息化战略规划方案.docx
- 作风建设学习教育单位自查清单(28个问题方面)+领导干部作风建设学习教育查摆问题清单(五个方面共15条).docx VIP
- 2024江苏省数据集团有限公司招聘试题及答案解析.docx
- FlyWan双口USB打印服务器安装方法.doc VIP
- 2023年03月六级真题全3套.pdf VIP
- 2024年初三中考第一次模拟考试试题:地理(安徽卷)(考试版A3).docx VIP
- 天津市部分区2022-2023学年三年级下学期语文期末试卷.pdf VIP
- 高铁客运服务案例分析报告.docx VIP
文档评论(0)