`
孤星119
  • 浏览: 124473 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Struts1.3 validation校验

 
阅读更多

1.web项目中添加Strust1.3

    步骤如  Eclipse 手动添加 struts1.3

2. 建立测试页面 logon.jsp  代码如下

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<%@page	language="java" contentType="text/html; charset=GB18030" pageEncoding="GB18030"%>

<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html"%>
<html>
<head>
<title>logon</title>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<meta name="GENERATOR"	content="Rational® Application Developer™ for WebSphere® Software">
</head>
<body>
	
	<html:errors/>
	<form action="logon.do" method="post">
		<table>
			<TR>
				<td>UserName</td>
				<td><input name="username" type="text" /></td>
			</TR>
			
			<TR>
				<td>PassWord</td>
				<td><input name="password" type="password" ></td>
			</TR>
			
			<TR>
				<td><input type="submit" value="LOGON" /></td>
			
				<td><input type="reset" value="RESET" /></td>
			</TR>
		
		</table>
	</form>
</body>
</html>

 

 

 

 

 

3.修改struts配置文件 struts-config.xml 如下

  

 

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts-config PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
          "http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
        <form-beans>
                <form-bean name="logonForm" type="logon.LogonForm" />
        </form-beans>

        <action-mappings>
        		<!-- 注意action中的 input 如果没有这个, 则使用struts validator时会报错 -->
                <action path="/logon" input="/logon.jsp" type="logon.LogonAction"
                        name="logonForm" validate="true" scope="request"> 
                        <forward name="LogonSuccess" path="/logonSuccess.html" />
                        <forward name="LogonFailure" path="/logonFailure.html" />
                </action>
        </action-mappings>
        
        
        
     <!-- 指定资源文件 -->
	<message-resources parameter="resources.application" />	   
    
    
    <!-- validate 配置 -->    
	<plug-in className="org.apache.struts.validator.ValidatorPlugIn">
		<set-property property="pathnames" 
		value="/org/apache/struts/validator/validator-rules.xml,/WEB-INF/validation.xml"/>
	</plug-in>


	
</struts-config>

 

 

4.在web-inf目录下 建立 validation.xml文件 内容如下  意思如注释

  

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE form-validation PUBLIC
"-//Apache Software Foundation//DTD Commons Validator Rules Configuration 1.3.0//EN"
"http://jakarta.apache.org/commons/dtds/validator_1_3_0.dtd">

<form-validation>
	<formset>

		<!-- An example form -->
		
		<form name="logonForm">
		
			<field property="username" depends="required,maxlength,minlength">		<!-- depends 设置校验规则 若多个规则, 用逗号隔开  这里 required username必填-->
				<arg key="logonForm.username" />				<!-- 用于返回到页面上的校验结果, 如“**必填”  这里在application.properties中找想要显示的对应的文字 -->
				
				
				<arg key="${var:maxlength}"  name="maxlength" resource="false"	/>	<!-- 设置输入的最大长度 这里 maxlength 作为一个参数也传入到application.properties中了 -->
				<var>
					<var-name>maxlength</var-name>
					<var-value>10</var-value>
				</var>
				
				<arg key="${var:minlength}"  name="minlength" resource="false"	/>	<!-- 设置允许输入的最小长度 minlength -->
				<var>
					<var-name>minlength</var-name>
					<var-value>6</var-value>
				</var>
			</field>
			
			<field property="password" depends="required,mask">
				<arg key="logonForm.password" />
				<var>
					<var-name>mask</var-name>
					<var-value>^[0-9a-zA-Z]*$</var-value>
				</var>
			</field>
			
		</form>

	</formset>
</form-validation>

 

 

 

6.Form 和Action 分别如下

package logon;

import org.apache.struts.validator.ValidatorForm;

public class LogonForm extends ValidatorForm {
	
	private String username;
	private String password;

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

}

 

 

LogonAction.java

 

 

package logon;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.log4j.Logger;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.DispatchAction;


public class LogonAction extends DispatchAction {
	


	private static Logger log=Logger.getLogger(LogonAction.class);
	
	@Override
	public ActionForward execute(ActionMapping mapping, ActionForm form,
			HttpServletRequest request, HttpServletResponse response)
			throws Exception {
		
		
		
		
		LogonForm logonform =(LogonForm)form;
		
		log.info(" 用户  "+logonform.getUsername()+"  准备登陆!");
		
		if(logonform.getUsername().trim().length()>0 && logonform.getPassword().trim().length()>0){
			log.info(" 用户  "+logonform.getUsername()+"  登陆成功!");
			return mapping.findForward("LogonSuccess");
			
		}
		
		return mapping.findForward("LogonFailure");
		
	}
	
}

 

 

 

Ps:应该就这么多了 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

分享到:
评论

相关推荐

    struts1.3实现的Validator简单验证

    1. 配置文件:在Struts1.3中,Validator的配置通常位于`validation.xml`文件中,这里定义了验证规则和错误消息。每个ActionForm对应一个验证配置,用于指定需要验证的字段、验证规则以及错误消息。 2. 验证规则:...

    Struts1.3和config配置详解

    9. **Validator规则**:如果使用了Struts的Validator组件,可以在`struts-config.xml`中定义验证规则,通过`&lt;form-validation&gt;`元素来引用XML验证文件。 在`struts-1.3.10-all.zip`压缩包中,包含了Struts1.3.10的...

    Struts2输入校验总结

    ### Struts2输入校验深度解析 #### 一、手动输入完成校验 在Struts2框架中,输入校验是确保数据完整性和安全性的重要环节。对于手动输入完成校验,Struts2提供了灵活的机制。 1. **普通处理方式**:在Action类中...

    Struts1.3_Spring3.0_hibernate3.3示例

    Struts1.3_Spring3.0_Hibernate3.3示例是一个综合性的项目,它展示了如何在Java Web开发中整合三个流行的技术框架:Struts1.3、Spring3.0和Hibernate3.3。这些框架分别负责MVC(Model-View-Controller)架构、依赖...

    Struts2 校验器

    这篇博客文章可能是关于如何使用Struts2的内置校验机制以及自定义校验规则的探讨。 Struts2的校验框架是基于Apache Commons Validator库的,它允许开发者定义一系列的验证规则来检查用户的输入。这些规则可以是简单...

    dwr2.0整合Struts1.3+hibernate3.1+spring2.5的项目

    标题 "dwr2.0整合Struts1.3+hibernate3.1+spring2.5的项目" 涉及的是一个经典的Java Web开发技术集成,这其中包括Direct Web Remoting (DWR) 2.0、Struts 1.3、Hibernate 3.1和Spring 2.5。这个项目可能是为了展示...

    Spring2.5+Hibernate3.3+Struts1.3整合需要用到的所有jar文件

    Struts 1.3作为经典的MVC框架,虽然在后续版本中被Struts 2取代,但在许多项目中仍然广泛使用。它提供了一套完整的请求处理流程,包括拦截器、动作类、结果视图等组件,帮助开发者更好地组织业务逻辑和控制流。 ...

    struts2 validation

    Struts2 Validation是Apache Struts框架的一个重要组成部分,主要用于处理Web应用中的数据验证。这个框架提供了灵活且强大的机制,帮助开发者实现对用户输入的有效性检查,确保数据的准确性和安全性。下面将详细介绍...

    Struts使用validation框架来实现校验,4种以上的校验规则

    使用Struts的Validation框架,我们可以轻松地实现这些校验规则。以下是对四种常见校验规则的详细解释: 1. **非空验证**:这是最基本的校验规则,确保用户没有遗漏必填字段。在ActionForm类中,可以使用`@Required...

    struts2输入校验

    - **使用JSR 303/JSR 349 Bean Validation**:Struts2也支持使用JSR 303(JavaBeans Validation)或JSR 349(Bean Validation 1.1)标准的注解进行校验。这些注解可以直接在Action类的字段上声明,如`@NotNull`, `@...

    Struts2中的validation_多国语言版 国际化i18n+struts2数据校验.zip

    首先,我们来探讨"Struts2中的validation_多国语言版",这是Struts2的数据校验功能。Struts2提供了一种灵活的机制来验证用户输入,通过在Action类中定义校验规则或使用XML配置文件。当用户提交表单时,框架会自动...

    Struts2数据校验与国际化

    在struts.xml或相应的action配置中,可以定义field和global validation规则,这种方式更加灵活且易于维护。 接下来,我们谈谈Struts2的国际化支持。国际化(i18n,代表“Internationalization”)使得应用程序能够...

    Struts-Validation

    自动验证基于配置文件(通常是struts-config.xml或struts-validation.xml)和自定义的ValidatorForm类。在配置文件中,开发者定义了每条验证规则,如字段的必要性、长度限制、正则表达式等。自定义的ValidatorForm类...

    Struts2自定义校验框架

    Struts2提供了内置的验证框架,允许开发者自定义校验规则,以满足特定业务需求。下面将详细介绍Struts2自定义校验框架的相关知识点。 1. **Struts2验证框架概述** Struts2的验证框架主要负责处理用户提交的数据,...

    Struts属于校验(使用直接编码方式)

    随着框架的发展,Struts引入了更高级的校验机制,如Struts2的Validation框架和Field Level Validation,以及第三方库如Hibernate Validator,它们提供了声明式校验,将校验逻辑从Action类中分离出来,提高了代码的...

    Struts2 Validation验证实例

    Struts2提供了一种强大的验证机制,即Struts2 Validation,它允许开发者定义并执行表单字段的验证规则。 验证在Web开发中的主要目的是防止无效数据进入数据库或执行错误的业务逻辑。Struts2的验证框架允许我们在...

    struts2输入校验总结

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

    struts2 短路校验(客户端校验)

    1. **引入JSR303 Bean Validation**:Struts2客户端校验依赖于JSR303(JavaBean Validation API),所以首先确保项目中已经包含了JSR303的实现,如Hibernate Validator。 2. **配置Action**:在Action类中,使用`@...

Global site tag (gtag.js) - Google Analytics