struts2 使用Validation框架进行数据验证

 网上关于struts2 使用Validation框架进行数据验证的例子很多 这里不一一解释每个文件每行代码是什么意思了

 

主要说一下自己遇到的问题,和以后要注意的情况

 

1.基于xml文件的配置信息,命名规范需要按照 对应“action的类名-validation”的形式,而非struts.xml中action标签的name属性值

若你的类名叫NewValidateAction,那你的验证文件文件名就是:NewValidateAction-validation.xml

 

2.文件名必须放在与该类同意目录下才可识别

 

3.NewValidateAction-validation.xml中的标签,对应的是jsp中要传入的属性元素

 

4.类型的意思是,现举几个常用的例子

 



	
		
		
			
			true
			
			用户名不能为空
		

		
		
			2
			20
			用户名长度应在2到18个字符间
		
	


	
		
			true
			密码不能为空
		

		
			6
			18
			密码长度应在6到18个字符之间
		
	


	
		
			1
			150
			年龄应在1到150之间
		
	


	
	
		
			1900-01-01
			2008-10-16
			出生日期应在1900-01-01到2008-10-16
		
	
	
   

 

 

结构图如下
struts2 使用Validation框架进行数据验证_第1张图片

 

所用到的struts2.3.4的11个jar包

struts2 使用Validation框架进行数据验证_第2张图片

 

附源码

 

NewValidateAction.java

package action;

import com.opensymphony.xwork2.ActionSupport;

public class NewValidateAction extends ActionSupport {
	
	private String msg; // 必须输入
	
	private int age; // 在13和20之间

	public String getMsg() {
		return msg;
	}

	public void setMsg(String msg) {
		this.msg = msg;
	}

	public int getAge() {
		return age;
	}

	public void setAge(int age) {
		this.age = age;
	}
}

 

 

 

NewValidateAction-validation.xml




	
		
			请输入信息
		
	
	
		
			13
			20
			必须在13至20之间
		
	


 

struts.xml




	
		
			/validate_form.jsp
			/validate_form.jsp
		
	

 

 

web.xml



	
		struts2
		org.apache.struts2.dispatcher.FilterDispatcher
	

	
	
		struts2
		/*
	
	
		index.jsp
	


 

 

validate_form.jsp

<%@ page language="java" import="java.util.*" pageEncoding="GBK"%>
<%@ taglib prefix="s" uri="/struts-tags"%>

	
		验证数据
	
	
		
			
			
			
		
	
 
  

 

你可能感兴趣的:(web框架)