复习struts2之基于XML配置方式实现对action的所有方法进行校验
2012-05-29 14:36
931 查看
使用基于XML配置方式实现输入校验时,Action也需要继承ActionSupport,并且提供校验文件,校验文件和action类放在同一个包下,文件的取名格式为:ActionClassName-validation.xml,其中ActionClassName为action的简单类名,-validation为固定写法。如果Action类为HelloWordAction,那么该文件的取名应为:HelloWordAction-validation.xml 实例: HelloWord.java 定义两个属性 private String username; private String mobile; 在此省略上面两个属性的set和get方法 public String update(){ ActionContext.getContext().put("message", "更新成功"); return "success"; } public String save(){ ActionContext.getContext().put("message", "保存成功"); return "success"; } HelloWordAction-validation.xml <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.3//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.3.dtd"> <validators> <field name="username"> <!--必填字符串--> <field-validator type="requiredstring"> <!--去掉字符串的前后空格,默认就是true--> <param name="trim">true</param> <!--校验失败时输出的信息--> <message>用户名不能为空!</message> </field-validator> </field> <field name="mobile"> <field-validator type="requiredstring"> <param name="trim">true</param> <message>手机号不能为空!</message> </field-validator> <field-validator type="regex"> <param name="expression"><![CDATA[^1[358]\d{9}$]]></param> <message>手机号格式不正确!</message> </field-validator> </field> </validators> 在struts.xml文件中配置(要配置input视图) <action name="helloword" class="cn.itcast.action.HelloWordAction" method="update"> <result name="input">/index.jsp</result> <result name="success">/WEB-INF/page/message.jsp</result> </action> Index.jsp <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib uri="/struts-tags" prefix="s" %> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>输入校验</title> </head> <body> <!-- 用于显示错误信息 --> <s:fielderror/> <form action="${pageContext.request.contextPath }/test/helloword.do " method="post"> 用户名:<input type="text" name="username"/><br/> <!-- 生日:<input type="text" name="birth"/><br/> --> 手机号:<input type="text" name="mobile"/><br/> <input type="submit" value="提交"/> </form> </body> </html> message.jsp ${message} 对HelloWordAction-validation.xml中的某些字段进行分析: <field>指定action中要校验的属性,<field-validator>指定校验器,上面指定的校验器requiredstring是由系统提供的,系统提供了能满足大部分验证需求的校验器,这些校验器的定义可以在xwork-2.x.jar中的com.opensymphony.xwork2.validator.validators下的default.xml中找到。 <message>为校验失败后的提示信息,如果需要国际化,可以为message指定key属性,key的值为资源文件中的key。 在这个校验文件中,对action中字符串类型的username属性进行验证,首先要求调用trim()方法去掉空格,然后判断用户名是否为空。
相关文章推荐
- Struts2基于XML配置方式实现对action的所有方法进行输入校验
- 转载 - Struts2基于XML配置方式实现对action的所有方法进行输入校验
- Struts2 基于XML配置方式实现对action的所有方法进行校验
- Struts2_基于XML配置方式实现对action的所有方法进行校验
- struts2-18基于XML配置方式实现对action的所有方法或指定方法进行输入校验
- Struts2基于XML配置方式实现对Action方法进行校验
- 基于XML配置方式实现对action的所有方法和指定方法进行输入校验
- Struts2学习笔记(十四):基于XML配置方式实现对action的所有方法进行校验
- 基于XML配置方式实现对action的所有方法进行输入校验
- 第二十二章 基于XML配置方式实现对action的所有方法进行校验
- 基于XML配置方式实现对action的所有方法进行校验
- 基于XML配置方式实现对action的所有方法进行校验
- struts2中以xml配置方式对action的所有方法进行校验
- 基于xml配置方式实现对action中指定方法进行输入校验
- 【Struts2学习笔记(11)】对action的输入校验和XML配置方式实现对action的所有方法进行输入校验
- struts2基于XML配置方式对指定action方法进行校验
- Struts2_基于XML配置方式对指定action方法实现输入校验、基于XML校验的一些特点
- struts2基于xml配置方式对Action方法进行校验
- struts2中以xml配置方式对action的所有方法进行校验
- 基于xml配置方式实现对action中指定方法进行输入校验