- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
struts2正则表达式校验总结
Struts2输入校验总结XX-11-1815:18 一.手动输入完成校验 1.普通的处理方式:只需要在action中重写validate方法 2.一个action对应多个逻辑处理方法:指定校验摸个特定方法的方式:重写validateXxxx方法。Eg:如果,只校验login方法,则只需重写validateLogin(). 二.输入校验流程: 1.类型转换器负责对字符串的请求参数执行类型转换。并将这些值设置成Action的属性值。 2.转换过程中若出现异常,则将异常信息保存到ActionContext中, conversionError拦截器将其封装到fieldError中。 3.通过反射调用validateXxx()方法。 4.调用validate(). 5.如果未出现异常,则转入用户请求的处理方法,如果出现异常,则转入inout视图所指定的视图资源。 三.基于验证框架的输入校验 1.编写校验配置文件:命名规则:action类名- 2.一个action对应多个逻辑处理方法:指定校验摸个特定方法的方式:action类名-name属性名- 3.配置文件存放位置:放在与Action相同的文件夹内。 4.验证规则:先加载action类名-,然后加载action类名-name属性名-文件。 5.校验器的配置风格:两种:字段校验器,非字段校验器。 字段校验器配置格式: 参数值 .................... 校验失败后的提示信息 非字段校验器配置格式: 需要被校验的字段 参数值 校验失败后的提示信息 非字段校验:先指定校验器:由谁来校验,来校验谁! 字段校验器:先指定校验的属性:我来校验谁,由谁来校验! 6.校验器:struts2提供了大量的内置校验器:你可以在的下找到如下配置文件:里面列出了所有的内置校验器。 ---------------------------------------------------------- struts2表单验证里field-validatortype值: int整数; double实数; date日期; expression两数的关系比较; emailEmail地址; url visitor conversion regex正则表达式验证; required是否为空; requiredstring必须字符; stringlength输入字符长度限制; urlweb地址 visitor访问 conversion转换 ------------------------------------------------------------- 这些校验器已经可以满足大多数的验证需求,如果还需要特殊的要求,建议直接采用java代码搞定,除非你有很多地方都要用到,此时你可以自定义一个校验器。 四.校验器的执行顺序 1.所有非字段校验风格的校验器优先于字段校验风格的校验器; 2.所有非字段校验风格的校验器中,排在前面的会先执行; 3.所有字段校验风格的校验器,排在前面的会先执行; 五.校验器的短路原则 1.所有非字段检验器时最优先执行的,如果某个非字段校验器校验失败了,则该字段上的所有字段校验器都不会获得校验机会; 2.非字段校验校验失败,不会阻止其他非字段校验执行; 3.如果一个字段校验器校验失败后,则该字段下且排在该校验失败后的检验器之后的其他字段校验器不会获得校验机会; 4.字段校验器永远不会阻止非字段校验器的执行! 六.短路校验器 短路校验器:只需在或元素中添加 short-circuit=”true”属性。 注:在版本,已经支持客户端的短路校验。 七.客户端的校验: 在中添加validate=”true”. Struts2提供了客户端校验与服务端校验。这里只是做个简易的总结。 1.)服务端校验: 当程序流程进入到Action类,并经历了struts2的类型转换阶段后。接着进入struts2的输入校验阶段。 struts2的输入校验可自己编码进行校验,也可通过有规则命名的配置文件进行校验。 )编码校验: 在Action类里重写父类的validate()方法即可。 publicvoidvalidate(){ if(null==usern
文档评论(0)