Struts2解决重复提交有关问题(Token)

Struts2解决重复提交问题(Token)
方法一:
注册页面:
register.jsp
 <body>
 <form action="login.action" method="post">
  username:<input type="text" name="username"><br>
  password:<input type="password" name="password"><br>
  <!-- 这里加上token标签就OK,然后交给后台处理 -->
  <s:token></s:token>
  <input type="submit" value="submit">
  </form>  
  </body>


struts.xml配置如下:
<action name="register" class="com.test.action.RegisterAction">
			<result name="success">/result.jsp</result>
			<!-- 这里的name一定要为invalid.token -->
			<result name="invalid.token">/repeatSubmitError.jsp</result>
			<interceptor-ref name="token"></interceptor-ref>
			<interceptor-ref name="defaultStack"></interceptor-ref>
		</action>



方法二:
jsp跟Action都不需要做任何改变,只需改变struts.xml的配置
<action name="register" class="com.test.action.RegisterAction">
			<result name="success">/result.jsp</result>
			<!--使用tokenSession拦截器,如果发现重复提交,会直接返回success的结果页面
			一般论坛都使用这种方式,不管刷新多少次。其实都只执行一次
			 -->
			<interceptor-ref name="tokenSession"></interceptor-ref>
			<interceptor-ref name="defaultStack"></interceptor-ref>
		</action>