网站大量收购闲置独家精品文档,联系QQ:2885784924

[第五讲数据校验.ppt

  1. 1、本文档共51页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[第五讲数据校验

Struts2 输入验证 本次课的主要内容 本章主要内容 简介 用validate方法进行输入校验 validate()方法输入校验、validateXxx()方法输入校验 基于框架的输入校验 使用字段校验的输入校验、使用非字段校验的输入校验 简介 Web技术的发展给用户带来了方便,使用浏览器就可以完成某些工作。在方便使用的同时,也将系统输入界面暴露给用户,面临大量恶意破坏性输入的考验。例如金额的输入框中输入字母汉字,日期的输入框输入不正确的格式或不可能存在的日期等。这些都需要我们通过输入校验来解决。输入校验直接影响了系统的抗破坏性能和稳定性。 实际上,输入校验往往同类型转换联系在一起,都是对用户输入数据的规范化检查和处理,我们可以通过JavaScript来实现客户端校验,但一般都只是完成初步的检查和过滤,但对于需要与服务器交互的逻辑性校验就无能为力了,虽然提高了相应速度,但是功能有很大局限性,代码维护性也不好。我们不来讲解JavaScript的客户端校验,只是来看看Struts2为我们提供的输入校验方法。 Struts 2输入校验 输入校验分为客户端校验和服务器端校验。 客户端校验可以过滤掉用户的错误操作,是第一道防线,一般使用JavaScript代码实现。仅有客户端验证还是不够的。攻击者还可以绕过客户端校验直接进行非法输入,这样可能会引起系统的异常,所以必须加上服务器端的验证。但仅有服务器端验证也是不行的,客户的错误操作总是提交到服务器,由服务器端进行验证返回错误信息,这样会加重服务器的负担。 所以客户端验证和服务器端验证缺一不可,两者结合起来才可以构建健壮的系统。 什么是输入校验 输入校验,从字面上来看好像是指对如输入的密码或者用户名输入错误的校验。其实这个不算输入校验,这个算是业务逻辑的判断了。输入校验是对输入的用户名长度、密码长度、年龄信息等的判断。为了给大家一个感官上的认识,现在打开163邮箱的注册页面,如图所示。 为什么要进行输入校验 那为什么要进行输入校验呢?使用它有什么好处呢?为了更好地说明,来看下面这个注册页面,如图所示。 现在按常规输入用户注册信息,单击“注册”按钮进行注册。页面跳转到注册信息显示页,如图所示。 输入校验 Struts2的输入校验步骤 输入校验 手动完成输入校验 重写validate()方法 继承ActionSupport类,重写validate()方法 实例:OverrideValidate 重写validateXxx()方法 对于多个处理逻辑的校验,会有多个validateXxx()方法,重写这多个方法,可以实现对不同处理逻辑的独立校验处理。 实例:ValidateXxx 用validate方法进行输入校验 用validate方法进行输入校验 validate()方法输入校验 接着创建validate.jsp,用来输入用户名和密码。代码如下所示, 用validate方法进行输入校验 .1 validate()方法输入校验 然后创建校验成功后的页面detail.jsp,代码如下所示。 用validate方法进行输入校验 .1 validate()方法输入校验 在src目录下建立配置文件struts.xml,如下所示。 用validate方法进行输入校验 用validate方法进行输入校验 .1 validate()方法输入校验 点击确认后,我们的校验执行了,这里,每个输入域都会出现对应的错误信息,效果图如下。 用validate方法进行输入校验 .1 validate()方法输入校验 当我们输入符合条件的数据但不是admin和password时,例如输入admi和1234567时,返回输入页面但是没有出错信息,说明校验是正常通过的只是逻辑不正确。 用validate方法进行输入校验 .1 validate()方法输入校验 我们再来输入admin和password,将迁移到detail.jsp,表示校验正常,逻辑也正确。 用validate方法进行输入校验 .1 validate()方法输入校验 我们还可以在validate.jsp中加入如下代码,这样可以把所有的异常信息显示出来。 我们把它放在了/body上边,出错的时候,错误信息除了在每个输入框处显示外,在页面最下端也会把所有的错误显示出来。 效果图。 用validate方法进行输入校验 .2 validateXxx()方法输入校验 对于使用validate()方法校验,我们在Action中所有的处理方法都会进行数据校验,可以把所有要验证的逻辑代码都写入其中,但是却不利于维护,而validateXXX可以将某逻辑的校验代码从vali

文档评论(0)

wangz118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档