首页 > 代码库 > struts练习-表单提交

struts练习-表单提交

防止表单重复提交练习:

做struts练习之前,首先有一些准备工作要做,那就是建立一个web工程大笑,另外就是导入jar包和配置web.xml

我一般都是将以下jar包一次性导入(大笑,可能一个知识点的练习不需要那么多)

以上jar下载

web.xml中需要添加过滤器:

配置如下内容:

完成以上配置之后,在src下建立struts.xml(当然暂时可以不用)!

下面就可以进行你要做的工作了!

下面的例子是我的防止表单重复提交的练习:

1、发送请求的页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    <base href=http://www.mamicode.com/"">>

2、提交成功页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <base href=http://www.mamicode.com/"">>

3、重复提交,提示错误页面:

<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s" %>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
    <base href=http://www.mamicode.com/"">>

4、Action代码:

package cn.itcast.action;

import com.opensymphony.xwork2.ActionSupport;


public class TokenAction extends ActionSupport{
	
	@Override
	public String execute() throws Exception {
		System.out.println("用户注册...");
		return SUCCESS;
	}
}

5、struts配置信息:

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

<!-- 配置struts -->
<struts>
						<!-- 常量配置 -->	
	<!-- 配置web应用的默认编码集 -->
	<constant name="struts.i18n.encoding" value=http://www.mamicode.com/"UTF-8">>

6、web.xml配置信息:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="3.0" 
	xmlns="http://java.sun.com/xml/ns/javaee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
	http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
	<display-name></display-name>
	
	<!-- 设置过滤器 -->
	<filter>
		<!-- 过滤器的名称 -->
		<filter-name>struts</filter-name>
		<!-- 过滤器的实现类,负责具体的过滤事务 -->
		<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
	</filter>
	
	<!-- 设置过滤器的映射 -->
	<filter-mapping>
		<!-- 过滤器的名称 -->
		<filter-name>struts</filter-name>
		<!-- 过滤器负责过滤的URL -->
		<url-pattern>/*</url-pattern>
	</filter-mapping>

	<!-- 设置该web站点欢迎文件列表 -->
	<welcome-file-list>
		<!-- 指定欢迎文件名称 -->
    	<welcome-file>index.jsp</welcome-file>
	</welcome-file-list>
</web-app>

7、tokenerror.properties文件:

单击Add,将错误信息以中文形式提示客户!



打包下载,希望对您有用!