struts2校验

三种方式:

1.直接在类中校验

jsp界面添加:

<s:fielderror cssStyle="color:red"/>
<s:actionerror cssStyle="color:red"/>

Action类中:

validate+Action方法名称首字母大写

例如:

addTask(){

}

validateAddTask(){

this.addActionError("增加的自定义探测端口格式不正确!");

}

2.xml指定Action类 校验

jsp界面添加:

<s:fielderror cssStyle="color:red"/>
<s:actionerror cssStyle="color:red"/>

xml方式:

action类名称

全部方法校验名:ActionClassName-validation.xml

例如:PersonAction-validation.xml

3.xml指定Action类+指定到方法校验

jsp界面添加:

<s:fielderror cssStyle="color:red"/>
<s:actionerror cssStyle="color:red"/>

指定方法校验名:ActionClassName-ActionName-validation.xml 

例如:PersonAction-User_addUser-validation.xml

 tip:其中xml方式 

例子:

<validators>
<field name="user.username">
<field-validator type="requiredstring">
<param name="trim">true</param>
<message>用户名不能为空</message>
</field-validator>
<!-- 验证用户名只能是字母或数字,长度在6-25之内 -->
<field-validator type="regex">
<param name="expression">
<![CDATA[(w{6,25})]]>
</param>
<message>您输入的用户名必须在6-25个字符内,并且只允许字母和数字</message>
</field-validator>
</field>

</validators>

type存放路径:/com/opensymphony/xwork2/validator/validators/default.xml

<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>

原文地址:https://www.cnblogs.com/sj521/p/5370171.html