部分不重要的代码,未复制!
<!--注册页面-->
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<html>
<head>
<title>用户注册</title>
</head>
<body>
<!-- 这里用的是struts的标签,它给我们提供了很多的便利 -->
<html:form action="/UserMain">
姓名 : <html:text property="name"/><html:errors property="name"/><br/>
<!-- 在回显时,为了数据安全就将密码清空了,只需将其value值设为""即可 -->
密码 : <html:password property="password" value=""/><html:errors property="password"/><br/>
确认密码 : <html:password property="password2" value=""/><html:errors property="password2"/><br/>
<html:submit value="提交"/>
</html:form>
</body>
</html>
//用于储存用户信息的FormBean
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.fenghuo.struts.web.forms;
import javax.servlet.http.HttpServletRequest;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;
/**
* MyEclipse Struts
* Creation date: 10-07-2012
*
* XDoclet definition:
* @struts.form name="userForm"
*/
public class UserForm extends ActionForm {
/**
*
*/
private static final long serialVersionUID = 8184190723003145234L;
/** password2 property */
private String password2;
/** name property */
private String name;
/** password property */
private String password;
/*
* Generated Methods
*/
/**
* Method validate
* @param mapping
* @param request
* @return ActionErrors
*/
public ActionErrors validate(ActionMapping mapping,
HttpServletRequest request) {
ActionErrors errors = new ActionErrors();
if (!password.equals(password2)){
errors.add("password", new ActionMessage("<font color='red'>密码不相同</font>", false));
}
if(name.equals("") || name == null){
errors.add("name", new ActionMessage("<font color='red'>用户名不能为空</font>", false));
}
return errors;
}
/**
* Method reset
* @param mapping
* @param request
*/
public void reset(ActionMapping mapping, HttpServletRequest request) {
// TODO Auto-generated method stub
}
/**
* Returns the password2.
* @return String
*/
public String getPassword2() {
return password2;
}
/**
* Set the password2.
* @param password2 The password2 to set
*/
public void setPassword2(String password2) {
this.password2 = password2;
}
/**
* Returns the name.
* @return String
*/
public String getName() {
return name;
}
/**
* Set the name.
* @param name The name to set
*/
public void setName(String name) {
this.name = name;
}
/**
* Returns the password.
* @return String
*/
public String getPassword() {
return password;
}
/**
* Set the password.
* @param password The password to set
*/
public void setPassword(String password) {
this.password = password;
}
}
//注册成功进行跳转的action
/*
* Generated by MyEclipse Struts
* Template path: templates/java/JavaClass.vtl
*/
package com.fenghuo.struts.web.actions;
import java.io.UnsupportedEncodingException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import com.fenghuo.struts.web.forms.UserForm;
/**
* MyEclipse Struts
* Creation date: 10-07-2012
*
* XDoclet definition:
* @struts.action path="/UserRegister" name="userForm" scope="request" validate="true"
* @struts.action-forward name="main.jsp" path="/WEB-INF/jsp/main.jsp" redirect="true"
*/
public class UserMain extends Action {
/*
* Generated Methods
*/
/**
* Method execute
* @param mapping
* @param form
* @param request
* @param response
* @return ActionForward
*/
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) {
return mapping.findForward("success");
}
}
<!--主页面-->
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>主界面</title>
</head>
<body>
<br>
${userForm.name } 欢迎来到主界面!
</body>
</html>
<!--struts-config.xml-->
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">
<struts-config>
<data-sources />
<form-beans >
<form-bean name="userForm" type="com.fenghuo.struts.web.forms.UserForm" />
</form-beans>
<global-exceptions />
<global-forwards />
<action-mappings>
<!--注释部分内容用不到
<action path="/Test" type="com.fenghuo.struts.test.Test">
<forward name="success" path="/WEB-INF/jsp/test.jsp"></forward>
</action>
-->
<action
attribute="userForm"
name="userForm"
path="/UserMain"
scope="request"
type="com.fenghuo.struts.web.actions.UserMain"
input="/WEB-INF/jsp/register.jsp">
<set-property property="cancellable" value="true" />
<forward
name="success"
path="/WEB-INF/jsp/main.jsp"/>
</action>
<action path="/UserRegUI" type="com.fenghuo.struts.web.actions.UserRegUI">
<set-property property="cancellable" value="true" />
<forward name="success" path="/WEB-INF/jsp/register.jsp" />
</action>
</action-mappings>
<!--
<message-resources parameter="com.fenghuo.ApplicationResources" />
-->
</struts-config>
1.用户名为空时报错,返回注册页面
2.密码不相同是报错,返回。用户名回显。
3.用户名为空,且密码不相同。
4.注册,登陆成功。
在struts中,将数据封装成FormBean时会调用里面的validate方法,因此可以将数据的校验。放在这个方法中。这个方法会返回错误,我们可以用struts提供的标签显示相应的错误。FormBean会自动封装。默认存放到Session域中。
分享到:
相关推荐
官方下载:struts-2.3.24.1-all.zip 官方MD5校验:5a9a766700d408eccb6b0f1e1232c366
struts-2.5-all.zip 最新 struts-2.5-all.zip 官网下载 官方 MD5 校验值:4d09dfb05792a02ede32806aabf2b11e
Struts2输入校验总结 Struts2输入校验
该文件详细介绍了struts2标签、校验方法,并提供例子供参考。可以供初学者使用。
Struts2标签每个版本都有很大差异,新版本新特性值得期待,修复之前的一些页面处理校验问题,并兼容大多数操作系统及开发工具。
struts框架验证---输入校验器大全
用tomcat服务器,通过struts.xml写的action来操作网页之间的重定向和对login数据的校验。(分为admin和user的login网页)
struts2 -2.3.15.3-验证框架简单实现mode
struts2的输入校验有两种方式: 一.重写validate()方式 二.采用配置文件的方式 先我们就以一个简单的登录的例子来讲解这个吧. 重点讲解下,第二个采用配置文件的方式: 1.添加一个xml的校验文件,保存在...
在Eclipse中配置Struts2...Struts2―表单验证validate(html)对validate的type属性校验类型以及param 做了详细的解释说明。 struts2和struts的比较 让你更清楚的知道struts2和struts的不同之处。 struts教程(html)
struts2.0的数据校验框架struts2.0的数据校验框架struts2.0的数据校验框架struts2.0的数据校验框架
NULL 博文链接:https://chaoyi.iteye.com/blog/2161948
struts2官方例子7-表单验证 xml形式的验证,主要是在相应的action类旁,新建一个对应的xml文件,进行验证
struts2校验器,字段,非字段校验器的语法规则……
struts2文件上传,与xml校验 struts2文件校验可通过xml配对action的名称去校验属性的值。例如UploadAction.java中有一个book的属性。那么我可以定义一个UploadAction-validation.xml去校验这个book属性的内容。 xml的...
利用struts技术,用校验器校验用户提交信息的一个简单的用户注册登录的例子。用的数据库是2005的
在Struts 2.0中实现表单数据校验
详细讲解struts2中服务器端与客户端对表单数据的校验方式.
struts2输入校验 对指定方法进行输入校验