猿教程 Logo

struts2 校验器:字符串长度校验器(stringlength)

stringlength 校验器指定该字符串必须是给定的长度。 可用于用户名,密码等。

它默认修剪字符串,然后检查其长度是否为给定的长度。

stringlength验证器的参数

stringlength验证器定义了4个参数。

参数描述
fieldName该参数指定校验的action 属性名,如果采用字段校验风格,无须指定该参数;
minLength指定最小长度。 默认情况下会被忽略。
maxLength指定最大长度。 默认情况下会被忽略。
trim可选,指定校验该字段前是否截断该字段值前后的空白,默认true;

字符串长度验证器的示例

<validators>  
   <!-- Plain Validator Syntax -->  
    <validator type="stringlength">  
         <param name="fieldName">password</param>  
             <param name="minLength">6</param>  
             <param name="maxLength">10</param>  
             <param name="trim">true</param>  
             <message>Password must be between 6 to 10 characters long</message>          
         </validator>  
      
</validators>
<validators>  
    <!-- Field-Validator Syntax -->  
    <field name="password">  
          <field-validator type="stringlength">  
          <param name="minLength">6</param>  
          <param name="maxLength">10</param>  
          <param name="trim">true</param>  
          <message>Password must be between 6 to 10 characters long</message>         
       </field-validator>  
    </field>  
  
</validators>

stringlength验证器的完整示例


1)创建index.jsp进行输入

这个jsp页面使用struts UI标签创建一个表单。 它从用户那里接收名称,密码和电子邮件ID。

index.jsp

<%@ taglib uri="/struts-tags" prefix="s" %>
<html>
<head>
<STYLE type="text/css">
.errorMessage{color:red;}
</STYLE>
</head>
<body>

<s:form action="register">
<s:textfield name="username" label="Username"></s:textfield>
<s:password name="userpass" label="Password"></s:password>
<s:submit value="register"></s:submit>
</s:form>

</body>
</html>

2)创建action类

此操作类继承ActionSupport类并覆盖execute方法。

RegisterAction.java

package com.javatpoint;

import com.opensymphony.xwork2.ActionSupport;

public class Register extends ActionSupport{
private String username,userpass;

public String getUsername() {
	return username;
}

public void setUsername(String username) {
	this.username = username;
}

public String getUserpass() {
	return userpass;
}

public void setUserpass(String userpass) {
	this.userpass = userpass;
}

public String execute(){
	return "success";
}

}

3)创建验证文件

在这里,我们使用内置验证器来执行验证。

Register-validation.xml

<?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="username">
  		<field-validator type="requiredstring">
  		<message>Name can't be blank</message>
  		</field-validator>
  		</field>
  		
  		<field name="userpass">
  		<field-validator type="requiredstring">
  		<message>Password can't be blank</message>
  		</field-validator>
  		<field-validator type="stringlength">
  		<param name="minLength">6</param>
  		<param name="maxLength">10</param>
  		<message>Password must be greater than or equal to 6 and less than or equal to 10</message>
  		</field-validator>
  		
  		</field>
  		
  		</validators>

4)创建struts.xml

这个xml文件通过名称输入定义了一个额外的结果,另外还有一个拦截器jsonValidatorWorkflowStack。

struts.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>

<package name="default" extends="struts-default">
<action name="register" class="com.javatpoint.Register">
<result name="input">index.jsp</result>
<result>welcome.jsp</result>
</action>

</package>

</struts>

5)创建视图组件

它是显示用户信息的简单jsp文件。

welcome.jsp

<%@ taglib uri="/struts-tags" prefix="s" %>

Welcome,<s:property value="username"/>


版权声明:本站所有教程均为本站原创或翻译,转载请注明出处,请尊重他人劳动果实。请记住本站地址:www.yuanjiaocheng.net (猿教程) 作者:卿文刚
本文标题: C#环境
本文地址:http://www.yuanjiaocheng.net/Struts/struts-2-string-length-validation-example.html