Struts2之基于XML方式进行数据输入校验

使用基于XML配置方式实现输入校验时,action也要继承ActionSupport,并且提供校验文件,校验文件和action类放在同一个包下,文件的取名格式为:ActionClassName-validate.xml,其中ActionClassName为简单类名,-validate为固定写法。

输入页面index.jsp

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%><%@ taglib uri="/struts-tags" prefix="s"%><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><html><head><title>输入校验</title></head><body><s:fielderror/><form action="${pageContext.request.contextPath}/control/manage_save.action" method="post"> 管理用户名:<input type="text" name="username" />不能为空<br> 手机号码:<input type="text" name="mobilephone" /> 不能为空,并且要符合手机号码格式1,3/5/8,后面9位数字<br><input type="submit" value="提交" /></form></body></html>package struts2.validate.action;import com.opensymphony.xwork2.ActionContext;import com.opensymphony.xwork2.ActionSupport;public class PersonAction extends ActionSupport{private String username;private String mobilephone;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public String getMobilephone() {return mobilephone;}public void setMobilephone(String mobilephone) {this.mobilephone = mobilephone;}public String update() {ActionContext.getContext().put("message", "更新成功!");return "message";}public String save() {ActionContext.getContext().put("message", "保存成功");return "message";}}校验文件PersonAction-validation.xml<?xml version="1.0" encoding="utf-8"?><!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0.3//EN" ""><validators><field name="username"><field-validator type="requiredstring"><param name="trim">true</param><message>用户名不能为空!</message></field-validator></field><field name="mobilephone"><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>

看一下jar包里default.xml的更多校验器

<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE validators PUBLIC"-//OpenSymphony Group//XWork Validator Config 1.0//EN"""><!– START SNIPPET: validators-default –><validators><validator name="required" class="com.opensymphony.xwork2.validator.validators.RequiredFieldValidator"/><validator name="requiredstring" class="com.opensymphony.xwork2.validator.validators.RequiredStringValidator"/><validator name="int" class="com.opensymphony.xwork2.validator.validators.IntRangeFieldValidator"/><validator name="long" class="com.opensymphony.xwork2.validator.validators.LongRangeFieldValidator"/><validator name="short" class="com.opensymphony.xwork2.validator.validators.ShortRangeFieldValidator"/><validator name="double" class="com.opensymphony.xwork2.validator.validators.DoubleRangeFieldValidator"/><validator name="date" class="com.opensymphony.xwork2.validator.validators.DateRangeFieldValidator"/><validator name="expression" class="com.opensymphony.xwork2.validator.validators.ExpressionValidator"/><validator name="fieldexpression" class="com.opensymphony.xwork2.validator.validators.FieldExpressionValidator"/><validator name="email" class="com.opensymphony.xwork2.validator.validators.EmailValidator"/><validator name="url" class="com.opensymphony.xwork2.validator.validators.URLValidator"/><validator name="visitor" class="com.opensymphony.xwork2.validator.validators.VisitorFieldValidator"/><validator name="conversion" class="com.opensymphony.xwork2.validator.validators.ConversionErrorFieldValidator"/><validator name="stringlength" class="com.opensymphony.xwork2.validator.validators.StringLengthFieldValidator"/><validator name="regex" class="com.opensymphony.xwork2.validator.validators.RegexFieldValidator"/><validator name="conditionalvisitor" class="com.opensymphony.xwork2.validator.validators.ConditionalVisitorFieldValidator"/></validators><!– END SNIPPET: validators-default –>

其他一些校验器:

为我祈祷平安就好。我的旅行,会有你们的故事陪伴,所以我不会孤单。放心吧。

Struts2之基于XML方式进行数据输入校验

相关文章:

你感兴趣的文章:

标签云: