Struts2 数据校验

Posted on 2013-04-07 21:36  bokeyuan123465  阅读(186)  评论(0编辑  收藏  举报
以下是对注册页面registe.jsp的校验:

<?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE validators PUBLIC
        "-//OpenSymphony Group//XWork Validator 1.0.2//EN"
        "http://www.opensymphony.com/xwork/xwork-validator-1.0.2.dtd">
<validators>
 <field name="uname">                      <!-- name表示待校验字段名 -->
   <field-validator type="requiredstring">  <!-- type表示校验器的名字,此处表示保证字段不是空值null也不是empty -->
   <param name="trim">true</param>          <!--  trim表示是否去除前后空格值 --> 
   <message key="errorname"></message>  <!-- 如果无法显示错误信息则可以用${getText("errorname")}尝试 -->
   <!-- <message>${getText("errorname")}</message> -->    <!-- 两种方法都可以读取资源信息 -->
   </field-validator>
   <field-validator type="regex">         <!-- regex表示字段值是否与一个给定的正则表达式匹配 --> 
   <param name="expression"><![CDATA[(\w{4,30})]]></param>  <!-- name表示校验器相应的参数名及其对应的参数值 -->
   <message key="用户名长度必须在4到30位之间"></message>      <!-- 校验失败信息 -->
   </field-validator>
 </field>
 
 <field name="upass">
   <field-validator type="requiredstring">
     <param name="trim">true</param>
     <message key="errorpass"></message>
   </field-validator>
   <field-validator type="regex">
     <param name="expression"><![CDATA[(\w{4,30})]]></param>
     <message>密码必须在4到30位之间</message>
   </field-validator>
 </field>
 
 <field name="uage">
  <field-validator type="int">
  <!-- <field-validator type="regex">
   <param name="expression"><![CDATA[([0-1]?\d\d)]]></param> -->
   <param name="min">1</param>
   <param name="max">150</param>
   <message>年龄必须在1-150以内整数</message>
  </field-validator> 
 </field>
 
 <field name="ubirth">
  <field-validator type="date">
   <param name="min">1980-01-01</param>
   <param name="max">2012-12-30</param>
   <message>年月日必须在1980-01-01至2012-12-30间</message>
  </field-validator>
 </field>
</validators>


registe.jsp页面的主要信息如下:

<head>

<s:head/>    <!-- 添加此标签之后,校验失败的错误信息提示会以红色显示 -->
  </head>

</head>

<body>
    <s:form action="registe" validate="true">
    <s:textfield name="uname" label="用户名"></s:textfield>
    <s:password name="upass" label="密       码"></s:password>
    <s:textfield name="uage" label="年        龄"></s:textfield>
    <s:textfield name="ubirth" label="生       日"></s:textfield>
    <s:submit value="注册"></s:submit>
    </s:form>
  </body>

 

Copyright © 2024 bokeyuan123465
Powered by .NET 8.0 on Kubernetes