- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
单元6:Struts 2输入校验
Struts 2输入校验 软件技术专业 范新灿 本章脉络 输入校验 输入校验:应用程序必须能正常处理对异常输入的过滤,这就是输入校验,也称为数据校验 通常的做法是碰到异常输入时,应用程序直接返回,提示浏览者必须重新输入。 校验示例 验证Action——validate()方法 public void validate() { // 校验是否输入用户名 if (getName() == null || getName().trim().equals()) { addFieldError(name, 必须输入用户名); }else //校验用户名的组成与长度 if(!Pattern.matches(\\w{4,15},name)){ addFieldError(name, 用户名必须是字母和数字,且长度在(4-15)范围内); } // 校验是否输入密码 if (getPass1() == null || getPass1().trim().equals()) { addFieldError(pass1, 请输入密码); } //校验密码的组成与长度 else if(!Pattern.matches(\\w{6,15},pass1)){ addFieldError(pass1, 密码必须是字母和数字,且长度在(6-15)范围内); } // 校验是否输入确认密码 if (getPass2() == null || getPass2().trim().equals()) { addFieldError(pass2, 必须输入确认密码); 验证Action——validate()方法 }else // 校验输入的密码和确认密码是否一致 if(!getPass2().equals(getPass1())) { addFieldError(pass2, 确认密码必须和密码输入保持一致); } // 校验是否输入生日 if (getBirthday() == null) { addFieldError(birthday, 必须输入生日日期); } else // 校验是否输入正确的生日日期 if (getBirthday().after(new Date())) { addFieldError(birthday, 您输入了未来日期); } // 校验输入的手机号码长度是否正确 if (getMobile().length() != 11) { addFieldError(mobile, 请输入正确的手机号码); } // 校验输入的年龄是否正确 if (getAge() 1 || getAge() 99) { addFieldError(age, 年龄必须是整数且在(1-99)之间); } } Pattern类 Pattern类是正则表达式的编译表示形式。 使用validateXxx方法进行输入校验 当Struts 2的Action类里定义了几个类似于execute的方法。 如果我们的输入校验只想校验某个处理逻辑,也就是仅校验某个处理方法,则重写validate方法无法知道需要校验哪个处理逻辑,该方法会校验所有的处理逻辑。 为了实现校验指定处理逻辑的功能,Struts 2的Action允许提供一个validateXxx方法,其中Xxx即是Action对应的处理逻辑方法,针对Action中某一特定方法进行该方法的各种字段的输入校验。 改写RegisterAction.java 类的定义中定义了一个Register方法,而没有execute方法,没有了validate方法,而是定义了validateRegister方法。 代码解析 validate方法是对所有Action中方法的输入都进行校验,而validateRegister方法只对Register方法进行校验,因此两者不要重复使用。 form表单的action属性值是:Register!Register.action,第一个“Register”是RegisterAction中的方法名,一定要和方法名保持一致;而“!”后的“Register”是在struts.xml配置文件中定义的Action配置的name值。 注册页面register.jsp表单提交后,地址栏为:http://localhost:8080/ValidateRegister/Register!Register.action,表明该表单数据输入后提交时执行的是Register方法。这是Struts 2的一个特殊
您可能关注的文档
- From First Mile to Last Mile - Global Logistics 全球物流报告.pdf
- 北京大学燕园鸟类组成_闻丞.pdf
- 5.3 刷题 Day 1 赵海 2016年 河南一模.pdf
- 新目标英语八年级下Unit8 Have you read Treasure 课件.ppt
- takara primestar GXL 酶 操作手册.pdf
- LED TubeLED灯管在申请ETL或UL时要注意的问题及结构要求UL2097和UL1993标准解析.pdf
- 名著导读 雾都孤儿 活动课.ppt
- 中餐菜名翻译研究综述.pdf
- 重复固溶处理对超低温用铸造马氏体时效不锈钢性能的影响_苏文文.pdf
- 06. 3DMAX 放样物体的建立.ppt
- 六年级上册数学《整数乘法运算定律推广到分数》课说课稿.docx
- 2025届湖南省衡阳市第八中学高三5月第一次联考语文试题含解析.doc
- 2025届湖南省长沙市浏阳市高三三校联考语文试题试卷含解析.doc
- 2025届湖南省双峰一中高三模拟试题语文试题试卷解析含解析.doc
- 2025届吉林省长春市长春市十一高中高三1月阶段性测试语文试题理试题含解析.doc
- 2025届黑龙江省鸡西市高三下学期4月份高考模拟训练(一)语文试题含解析.doc
- 2025届黑龙江伊春市第二中学高三5月质量检测试题巩固卷语文试题含解析.doc
- 2025届湖北省黄石市高三第二学期第一次调研测试语文试题含解析.doc
- 2025届吉林省长春市九台区第四中学高三下学期小二调考试语文试题含解析.doc
- 2025届吉林省汪清县四中高三下学期期中语文试题含解析.doc
文档评论(0)