防止表单重复提交

本文介绍如何在Struts2框架中实现表单提交的防重复功能。具体步骤包括:1) 在login.jsp页面引入token标签;2) 在struts.xml配置文件中设置token拦截器并加入拦截器栈;3) 定义错误结果页面处理重复提交的情况。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

主要内容:
1、在login.jsp页面使用token标签。
2、在配置文件struts.xml文件内添加token拦截器到拦截器栈中。
3、在配置文件struts.xml文件内action下要有一个result(name=" invalid.token"),当重复提交后的错误访问。

范例:
login.jsp
<%@ page language = "java" contentType = "text/html; charset=UTF-8"
    pageEncoding = "UTF-8" %>
<%@ taglib uri = "/struts-tags" prefix = "s" %>
<! DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" " http://www.w3.org/TR/html4/loose.dtd" ; >
< html >
< head >
< meta http-equiv = "Content-Type" content = "text/html; charset=UTF-8" >
< title > Insert title here </ title >
</ head >
< body >
< form action = "login.action" method = "post" >
< s:token />
用户名: < input type = "text" name = "name" >< br >
手机号: < input type = "text" name = "phone" >< br >
< input type = "submit" value = "提交" >
</ form >
</ body >
</ html >
struts.xml
<? xml version = "1.0" encoding = "UTF-8" ?>
<! DOCTYPE struts PUBLIC
   "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
< struts >
      < package name = "user" namespace = "/" extends = "struts-default" >
     
          < interceptors >
            < interceptor-stack name = "myInterceptor" >
              < interceptor-ref name = "token" />
              < interceptor-ref name = "defaultStack" ></ interceptor-ref >
            </ interceptor-stack >
          </ interceptors >
          < default-interceptor-ref name = "myInterceptor" />
     
          < action name = "login" class = "com.action.LoginAction" >
             < result name = "success" > /welcome.jsp </ result >
             < result name = "invalid.token" > /500. jsp </ result >
          </ action >
      </ package >
   </ struts >


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值