- 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校验流程
概要
Struts2 对数据校验一般可以发分成两部分:一是验证用户输入数据的有效性,二是在用户输入无效数据后向用户提示错误信息。
在struts2框架中,对用户输入数据的校验方式分为客户端与服务器端校验,通常情况下需要这两种校验紧密结合,互相协作。
客户端校验一般采用JavaScript脚本实现。
服务器端校验需要struts2框架自带的一些校验方法。
我介绍的是其中两种:使用validate()和validateXxxx()方法进行输入校验(服务器端校验)。
二.步骤
使用validate()方法校验
在自己的项目中创建JSP文件 例:addUser.jsp,在该文件中创建添加联系人的form表单,主要内容如下图1所示:
图1
①.s:fielderror/fielderror该语句用来输出表单域filederror中的提示错误信息
②.用这样的标签时需要写如下代码:
%@taglib prefix=s uri=/struts-tags %
2.在action文件夹下,创建一个Action类 AddUserAction.java 该类继承ActionSupport
ActionSupport类的引用路径是:import com.opensymphony.xwork2.ActionSupport
在AddUserAction类中重写ActionSupport类的validate()方法。
具体代码如下:
图2
①.如果姓名不符合要求,提示错误信息
②.上述Action类,重写validate()方法,并将对用户提交信息的判断都放在该方法中,使得execute()方法专注于逻辑处理
3.在struts配置文件中配置Action,代码如下:
图3
①.上述代码配置AddUserAction类,其中input字符串指向addUser.jsp视图,success字符指向success.jsp视图。
4.最后创建显示信息页面 success.jsp 主要内容如下:
图4
5.提示:
①.Struts2框架执行Action类时,会在调用execute()方法之前调用该Action类的
validate()方法。
②.在validate()方法中,如果系统发现有不合法输入时,调用其父类的addFieldError()方法记录一个fieldError错误,当流程进入到execute()方法之前,系统检查有没有fieldError,如果有,则不再执行execute()方法,而是返回一个input逻辑视图。
③.validate()方法执行对execute()方法的校验。
ValidateXxxx()方法输入校验
前言:
正如上面提示所说,validate()方法执行对execute()方法的校验,但是在Struts2框架中,Action可以包含多个逻辑处理方法,也就是可以包含多个类似execute()方法,只是方法名不同,那么需要对这些逻辑处理方法进行检验该怎么办呢?不必着急,struts2框架在Action中提供了
ValidateXxxx()方法,专门校验xxx()这个逻辑处理方法。对于我的认识我向大家介绍一下这个方法。
步骤:
创建jsp页面,有两个页面(一个是添加页面addUser.jsp另一个是显示页面success.jsp)页面代码参照上面图1、图4所示。
编写Action类。
只需将上面图2所示的代码稍微改动一下就可以,具体代码如下:
将默认的execute()方法改成add()方法去掉@Override字样
将validate()方法改成validateAdd()方法去掉@Override字样
三、编写struts配置文件,只需将上面图3所示的代码稍作改动。具体代码如下
①由于这里对add()方法进行校验,所以在配置Action时,需要指定其method属性为add让系统执行该Action时调用add()逻辑处理方法。
提示:
ValidateXxxx()方法专门校验xxx()方法。
如果validate()方法和validateXxxx()方法同时存在,运行时都被调用,并且都起到校验作用。其实不论请求Action的哪一个处理逻辑,validate()方法总会起到校验作用。
如果请求的Action中对应的validateXxxx()校验方法,那么该校验
您可能关注的文档
最近下载
- 第一单元-观察物体(单元测试)-2025-2026学年三年级上册数学人教版.docx VIP
- 处理量6万吨日城市生活污水处理厂初步设计.docx
- 后张法预应力钢绞线理论伸长量分段汇总计算实例和应用.doc VIP
- 老年人防骗知识课件下载.pptx VIP
- 3,5-二氯-2,6-二甲基-4-羟基吡啶的生产工艺.pdf VIP
- 个人征信基础数据库系统数据接口规范第三部分数据校验规则V1.0.doc VIP
- 个人征信基础数据库系统数据接口规范第二部分:数据发布格式.doc VIP
- Unit 2 Bridging Cultures 单元整体教学设计高中英语人教版 选择性必修第二册单元整体教学设计.pdf
- 40-50之间离婚协议书.doc VIP
- 清华大学八字班数学分析1期中 于品(1).pdf VIP
文档评论(0)