亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

基于Struts2實(shí)現(xiàn)防止表單重復(fù)提交

 更新時(shí)間:2020年10月21日 14:35:23   作者:cuisuqiang  
這篇文章主要介紹了基于Struts2實(shí)現(xiàn)防止表單重復(fù)提交,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

首先要配置攔截器,攔截器用于控制重復(fù)提交內(nèi)容!其實(shí)原理很簡單,就是在表單內(nèi)生成一個(gè)序列,判斷是否為新的序列,如果是之前的序列,則證明是一個(gè)重復(fù)提交內(nèi)容!

攔截器配置如下:

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
  "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
  "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
	<package name="common" extends="struts-default" namespace="/common">		
		<interceptors>
			<interceptor-stack name="loginStack">
				<interceptor-ref name="defaultStack"></interceptor-ref>
				<interceptor-ref name="token"></interceptor-ref>
			</interceptor-stack>
		</interceptors>
		<default-interceptor-ref name="loginStack"></default-interceptor-ref>
		<action name="loginAction_*" class="loginAction" method="{1}">
			<result name="success">/welcome.jsp</result>
			<result name="invalid.token" type="redirect">/index.jsp</result>
			<result name="input" type="redirect">/index.jsp</result>
		</action>
	</package>	
</struts>

注意:

如果你不引用:

<interceptor-ref name="defaultStack"></interceptor-ref>

那么你的后臺(tái)就不能再接收到參數(shù)。

<result name="invalid.token" type="redirect">/index.jsp</result>
<result name="input" type="redirect">/index.jsp</result>

這兩個(gè)返回你一定要配置!一個(gè)是重復(fù)提交的處理,一個(gè)是沒有表單標(biāo)記時(shí)的處理!

JSP中增加Struts標(biāo)簽的引用

<%@taglib prefix="s" uri="/struts-tags" %>

在表單內(nèi)增加一個(gè)標(biāo)記:

<s:form action="" name="form1" method="post">
<s:token></s:token>
</s:form>

頁面上會(huì)看到輸出兩個(gè)隱藏域:

<input type="hidden" name="struts.token.name" value="struts.token"/>
<input type="hidden" name="struts.token" value="BXPNNDG6BB11ZXHPI4E106CZ5K7VNMHR"/>

這就是你當(dāng)前表單的標(biāo)記,如果沒有標(biāo)記,則返回INPUT,如果標(biāo)記重復(fù)就是重復(fù)提交返回invalid.token!

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 最新JVM垃圾回收算法詳解

    最新JVM垃圾回收算法詳解

    ? 垃圾收集器對(duì)堆進(jìn)行回收前,首先要確定堆中的對(duì)象哪些還"存活",哪些已經(jīng)"死去"。有兩種算法,分別是引用計(jì)數(shù)算法(Recference?Counting)和可達(dá)性分析算法(Reachability?Analysis),這篇文章主要介紹了JVM垃圾回收算法,需要的朋友可以參考下
    2022-05-05
  • Java實(shí)現(xiàn)分頁代碼

    Java實(shí)現(xiàn)分頁代碼

    這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)分頁代碼,提高查詢效率,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-09-09
  • VSCode?配置?Spring?Boot?項(xiàng)目開發(fā)環(huán)境的全過程

    VSCode?配置?Spring?Boot?項(xiàng)目開發(fā)環(huán)境的全過程

    兩三年前曾經(jīng)試過配置Java環(huán)境, 存在不少問題作罷. 最近搜了下相關(guān)的文章, 感覺VSCode對(duì)Java項(xiàng)目的支持比三年前完善了不少. 今天實(shí)際配置了一下環(huán)境, 把自己常用的功能過了一遍, 基本能跑通開發(fā)流程, 做個(gè)筆記,需要的朋友可以參考下
    2024-03-03
  • Java+Windows+ffmpeg實(shí)現(xiàn)視頻轉(zhuǎn)換功能

    Java+Windows+ffmpeg實(shí)現(xiàn)視頻轉(zhuǎn)換功能

    這篇文章主要為大家詳細(xì)介紹了Java+Windows+ffmpeg實(shí)現(xiàn)視頻轉(zhuǎn)換功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • mybatis和mybatisplus批量插入問題示例詳解

    mybatis和mybatisplus批量插入問題示例詳解

    最近在處理一個(gè)功能的時(shí)候,需要批量插入數(shù)據(jù),這篇文章主要給大家介紹了關(guān)于mybatis和mybatisplus批量插入問題的相關(guān)資料,文中通過實(shí)例代碼介紹非常詳細(xì),需要的朋友可以參考下
    2023-04-04
  • Springmvc實(shí)現(xiàn)文件下載2種實(shí)現(xiàn)方法

    Springmvc實(shí)現(xiàn)文件下載2種實(shí)現(xiàn)方法

    這篇文章主要介紹了Springmvc實(shí)現(xiàn)文件下載2種實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-03-03
  • SpringBoot2使用JTA組件實(shí)現(xiàn)基于JdbcTemplate多數(shù)據(jù)源事務(wù)管理(親測(cè)好用)

    SpringBoot2使用JTA組件實(shí)現(xiàn)基于JdbcTemplate多數(shù)據(jù)源事務(wù)管理(親測(cè)好用)

    這篇文章主要介紹了SpringBoot2使用JTA組件實(shí)現(xiàn)基于JdbcTemplate多數(shù)據(jù)源事務(wù)管理(親測(cè)好用),在Spring?Boot?2.x中,整合了這兩個(gè)JTA的實(shí)現(xiàn)分別是Atomikos和Bitronix,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-07-07
  • JavaWeb詳細(xì)講述Cookie和Session的概念

    JavaWeb詳細(xì)講述Cookie和Session的概念

    web開發(fā)階段我們主要是瀏覽器和服務(wù)器之間來進(jìn)行交互。瀏覽器和服務(wù)器之間的交互就像人和人之間進(jìn)行交流一樣,但是對(duì)于機(jī)器來說,在一次請(qǐng)求之間只是會(huì)攜帶著本次請(qǐng)求的數(shù)據(jù)的,但是可能多次請(qǐng)求之間是會(huì)有聯(lián)系的,所以提供了會(huì)話機(jī)制
    2022-06-06
  • 深入理解java中this關(guān)鍵字的使用

    深入理解java中this關(guān)鍵字的使用

    這篇文章主要介紹了this關(guān)鍵字的使用,通過調(diào)用構(gòu)造方法,使用this關(guān)鍵字調(diào)用當(dāng)前對(duì)象等詳細(xì)介紹了this的特點(diǎn)和使用,需要的朋友可以參考下
    2017-08-08
  • Java中Cron表達(dá)式的生成解析及計(jì)算的工具類完整代碼

    Java中Cron表達(dá)式的生成解析及計(jì)算的工具類完整代碼

    這篇文章主要給大家介紹了關(guān)于Java中Cron表達(dá)式的生成解析及計(jì)算工具類的相關(guān)資料,Cron表達(dá)式是一個(gè)字符串,字符串空格分割,每一個(gè)域代表一個(gè)含義,一個(gè)cron表達(dá)式有至少6個(gè),需要的朋友可以參考下
    2023-12-12

最新評(píng)論