`

Struts2(5):Struts2的输入校验

阅读更多

1,Register.jsp,一个注册页面,包括用户名,密码,确认密码,年龄,生日,毕业时间这六个信息。

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<html>
  <body>
  <table align="center" width="40%">
  	<tr>
  		<td style="color:red"><s:fielderror></s:fielderror></td>
  	</tr>
  </table>
  	<s:form action="register" theme="simple">
  	<table align="center" width="40%">
	    <tr>
	    	<td>username:</td>
	    	<td><s:textfield name="username"></s:textfield></td>
	    </tr>
	    <tr>
	    	<td>password:</td>
	    	<td><s:password name="password"></s:password></td>
	    </tr>
	    <tr>
	    	<td>re-password:</td>
	    	<td><s:password name="repassword"></s:password></td>
	    </tr>
	    <tr>
	    	<td>age:</td>
	    	<td><s:textfield name="age"></s:textfield></td>
	    </tr>
	    <tr>
	    	<td>birthday:</td>
	    	<td><s:textfield name="birthday"></s:textfield></td>
	    </tr>
	    <tr>
	    	<td>graduation:</td>
	    	<td><s:textfield name="graduation"></s:textfield></td>
	    </tr>
	    <tr>
	    	<td><s:submit></s:submit></td>
	    	<td><s:reset></s:reset></td>
	    </tr>
    </table>
  </s:form>
  </body>
</html>

 

2,RegisterAction.java,在validate方法中进行输入校验

package com.test.action;

import java.sql.Date;
import java.util.Calendar;
import com.opensymphony.xwork2.ActionSupport;

public class RegisterAction extends ActionSupport {
	private String username;
	private String password;
	private String repassword;
	private int age;
	private Date birthday;
	private Date graduation;
	
	public String getUsername() {
		return username;
	}
	public void setUsername(String username) {
		this.username = username;
	}
	public String getPassword() {
		return password;
	}
	public void setPassword(String password) {
		this.password = password;
	}
	public String getRepassword() {
		return repassword;
	}
	public void setRepassword(String repassword) {
		this.repassword = repassword;
	}
	public int getAge() {
		return age;
	}
	public void setAge(int age) {
		this.age = age;
	}
	public Date getBirthday() {
		return birthday;
	}
	public void setBirthday(Date birthday) {
		this.birthday = birthday;
	}
	public Date getGraduation() {
		return graduation;
	}
	public void setGraduation(Date graduation) {
		this.graduation = graduation;
	}
	
	public void validate() {
		//年龄不能小于0
		if(age < 0){ 
			this.addFieldError("age", "your age is error");
		}
		//用户名不能为空
		if(null == username || username.equals("")){ 
			this.addFieldError("username", "please input your username");
		}
		//密码不能为空,且两次输入的密码必须相同
		if(null == password || null == repassword || !password.equals(repassword)){
			this.addFieldError("password", "your password is invalid");
		}
		//生日与毕业时间不能为空,且毕业时间不能早于生日
		if(null != birthday && null != graduation){
			Calendar c1 =Calendar.getInstance();
			c1.setTime(birthday);
			Calendar c2 =Calendar.getInstance();
			c2.setTime(graduation);
			if(c1.after(c2)){
				this.addFieldError("birthday", "birthday should be before graduation");
			}
		}
	}
}

 3,struts.xml配置

<action name="register" class="com.test.action.RegisterAction">
	<result name="success">/success.jsp</result>
	<result name="input">/register.jsp</result>
</action>

 4,输入成功后的显示页面

<%@ page language="java" import="java.util.*" pageEncoding="ISO-8859-1"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<html>
  <body>
    <table align="center" width="40%">
	    <tr>
	    	<td>username:</td>
	    	<td>${requestScope.username}</td>
	    </tr>
	    <tr>
	    	<td>password:</td>
	    	<td>${requestScope.password}</td>
	    </tr>
	    <tr>
	    	<td>age:</td>
	    	<td>${requestScope.age}</td>
	    </tr>
	    <tr>
	    	<td>birthday:</td>
	    	<td>${requestScope.birthday} </td>
	    </tr>
	    <tr>
	    	<td>graduation:</td>
	    	<td>${requestScope.graduation} </td>
	    </tr>
	    <tr>
	    	<td><input type="submit" name="submit"> </td>
	    	<td><input type="reset" name="reset"> </td>
	    </tr>
    </table>
  </body>
</html>

 

分享到:
评论

相关推荐

    Struts2输入校验总结

    5. **内置校验器**:Struts2提供了丰富的内置校验器,覆盖了从简单的类型检查到复杂的数据验证。例如`required`用于检查字段是否为空,`int`和`double`用于数值类型检查,`email`用于电子邮件地址验证等。 综上所述...

    struts2输入校验

    本文将深入探讨Struts2中的输入校验机制,以及如何对指定方法进行输入校验。 在Struts2中,输入校验通常分为两种方式:客户端校验和服务器端校验。客户端校验主要通过JavaScript在用户端进行,可以提供即时反馈,但...

    Struts2 校验器

    5. **校验结果处理**:当验证失败时,Struts2会将错误信息添加到ActionContext中,然后可以通过OGNL表达式在JSP页面中展示。同时,Action的execute方法不会执行,直到所有验证都通过。 6. **拦截器(Interceptor)*...

    Struts2的输入校验

    Struts2是一个流行的Java web框架,它为开发者提供了丰富的功能,包括输入校验。输入校验是确保应用程序安全性和数据完整性的关键环节,Struts2为此提供了强大的支持。以下是关于Struts2输入校验的详细解释: 首先...

    struts2输入校验深入总结

    Struts2提供了多种方式进行输入校验,包括Action级别校验、拦截器级别校验以及基于Validator框架的校验。 二、Action级别校验 Action级别校验是在Action类中定义校验逻辑,通常通过在Action类的属性上添加注解实现...

    struts2的输入校验

    struts2的输入校验有两种方式: 一.重写validate()方式 二.采用配置文件的方式 先我们就以一个简单的登录的例子来讲解这个吧. 重点讲解下,第二个采用配置文件的方式: 1.添加一个xml的校验文件,保存在...

    struts2输入校验总结

    Struts2是一个流行的Java web开发框架,它提供了一套强大的输入校验机制,确保用户提交的数据符合业务逻辑的要求。在本文中,我们将深入探讨Struts2的输入校验功能,包括手动输入校验和基于验证框架的输入校验。 ##...

    Struts2 输入校验

    Struts2提供了多种进行输入校验的方式,包括Action级别校验、Validator框架校验、拦截器校验以及使用JSR303/JSR349 Bean Validation标准。这些方法可以单独使用,也可以结合使用,以满足不同项目的需求。 1. Action...

    使用struts2进行输入校验

    在Struts2中,输入校验是一个至关重要的部分,它确保了用户从客户端提交的数据符合预设的业务规则,从而避免了无效或不合法数据进入系统。本篇文章将详细介绍如何在Struts2中进行输入校验,包括两种主要实现方式:...

    struts2中的输入校验

    在Struts2中,输入校验是确保用户提交的数据符合预设规范的重要环节,可以防止非法数据进入系统,保护数据的完整性和安全性。本文将详细探讨Struts2中的输入校验机制。 首先,Struts2提供了两种主要的校验方式:...

    Struts2校验框架应用

    Struts2作为一款流行的Java Web开发框架,提供了一套强大的校验框架,使得开发者能够方便地对用户输入数据进行验证,确保数据的准确性和安全性。本文将深入探讨Struts2校验框架的应用,包括其核心概念、配置方式、...

    Struts2数据校验与国际化

    Struts2作为一款流行的Java Web框架,其在处理用户输入数据和实现多语言支持方面具有强大的功能。在“Struts2数据校验与国际化”这一主题中,我们将深入探讨Struts2如何通过不同的验证机制确保数据的有效性,以及...

    Struts2 part6:数据校验

    在Struts2框架中,数据校验是确保用户输入有效性和数据安全的重要环节。这篇博客“Struts2 part6:数据校验”可能详细介绍了如何在Struts2中实现对用户提交的数据进行验证。 Struts2的数据校验分为两个主要部分:...

    struts2校验器

    struts2校验器,字段,非字段校验器的语法规则……

    Struts 2 输入校验

    Struts 2 输入校验

    struts2的数据校验

    总结,Struts2的数据校验机制提供了强大的工具来确保用户输入的有效性,通过注解、XML配置或自定义校验器实现灵活的校验规则。通过正确处理校验错误并利用国际化功能,开发者可以创建出健壮且用户体验良好的Web应用...

    Struts2的输入校验实例代码

    在Struts2中,输入校验是确保数据完整性和安全性的重要环节。输入校验可以防止恶意用户提交无效或有害的数据,并确保应用程序的稳定运行。以下是关于Struts2输入校验的详细知识: 1. **客户端校验**: 客户端校验...

Global site tag (gtag.js) - Google Analytics