struts2-数据校验.ppt

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

Struts2数据校验 代码方式 xml配置文件方式 数据校验——代码方式 在业务方法中编写数据校验的代码 用addFieldError(fieldName,errorMessage)方法为特定字段设置错误信息 用hasFieldErrors()检测是否有字段有出错信息 返回true,则有字段校验出错 返回false,则无字段校验出错 JSP页面中,使用fieldErrors提取出错信息 eg: s:property value=“fieldErrors.password[0]”/ 数据校验——代码方式 public void validate()方法 继承ActionSupport父类 将校验代码单独放在validate方法中,相关代码在Action业务方法执行前会被自动执行 调用addFieldError(字段名,出错信息)为字段设置出错信息 validate方法执行完,struts自动检测fieldErrors,actionErrors,如果任何一个集合不为空,含有出错信息,则自动返回input结果 Action的Result中,必须包含一个叫input的结果,这个结果一般是指向数据输入页面 数据校验——代码方式 针对特定方法的校验 public void validateXxxx()方法 例如:Action中有login方法,可以为该方法配置特有的校验validateLogin() 数据校验——代码方式 验证方法执行流程 struts2接收用户参数并执行类型转换,将转换后的数据传递给Action的属性 如果类型转换出现异常,conversionError拦截器将异常信息添加到fieldErrors里 如果用户调用了特定的业务方法(非execute),则调用action中对应的validateXxxx()方法 调用action中的validate()方法 经过以上4 步,如果fieldErrors中存在错误信息,则数据出错,自动返回input结果;如果fieldErrors中没有任何信息,这通过数据校验,执行action中的业务处理方法。 基于xml配置文件的校验 校验文件名称有特定的命名格式 Action类名-validation.xml 文件位置 保持与Action同一位置 编写校验规则 参考struts2文档 validation部分bundled validators 基于xml配置文件的校验 struts内置校验器简介 required validator requiredstring validator int validator date validator fieldexpression validator email validtor url validator conversion validator stringlength validator regex validator 基于xml配置文件的校验 演示:对注册信息进行数据校验 基于xml配置文件的校验 对特定方法的校验 文件命名: Action类名-方法名-validation.xml 执行顺序 首先执行通用的校验文件: Action类名-validation.xml 如果调用的是特定方法(非execute),则调用对应的校验文件执行校验 Action类名-方法名-validation.xml 如果两个文件,对同一字段,校验规则发生冲突,以后面的校验规则为准 基于xml配置文件的校验 short-circuiting validator 当一个字段有多个校验器时,可以通过指定short-circuit 属性为true,当检测到一个错误后,就停止对后续校验规则的调用 要使用校验框架,必须引入validation,workflow两个拦截器。这两个拦截器在defaultStack中已经引入。 当xml校验文件和validate校验方法同时存在时,二者都将被执行。先按照xml配置文件校验,然后执行validate方法。 * * * *

文档评论(0)

整理王 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档