博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Struts2防止表单重复提交
阅读量:6983 次
发布时间:2019-06-27

本文共 1654 字,大约阅读时间需要 5 分钟。

1.说明

系统拦截器的应用。

表单重复提交:当使用请求转化进行跳转的时候,存在着表单重复提交的问题。

2.在表单中加入s:token

如果页面加入了struts2的标签,页面的请求必须进入struts2的核心控制器。

s:token会被解析为隐藏域,隐藏域中的值是服务器产生的一个token,当提交表单的时候,会将token的值提交到服务器,struts2将客户端提交的token和session中的token比较:

如果匹配,正常提交,执行处理请求的方法

如果不匹配,返回值指定的result,result的名字为invalid.token

 

1 
2
3
4
5
6
7
8
9
10
11
12

3. 定义Action 

1 public class UserAction extends ActionSupport 2 { 3     // org.apache.struts2.interceptor.TokenInterceptor 4     private String uname; 5     private String upwd; 6     public String getUname() 7     { 8         return uname; 9     }10     public void setUname(String uname)11     {12         this.uname = uname;13     }14     public String getUpwd()15     {16         return upwd;17     }18     public void setUpwd(String upwd)19     {20         this.upwd = upwd;21     }22     public String userReg()23     {24         System.out.println(uname + "\t" + upwd);25         return Action.SUCCESS;26     }27 }

4. 配置Action 

1 
2 5
6
7
8
9
10
11
12
13
14
15
17
18
19
/index.jsp
20
/show.jsp
21
22
23

TokenSession:自己测试,不需要配置<result name="invalid.token">/index.jsp</result>

Invalid.token,默认在哪里刷新,停留在哪里。

 

转载地址:http://kdtpl.baihongyu.com/

你可能感兴趣的文章
Yii 框架学习--01 框架入门
查看>>
All Things OpenTSDB
查看>>
android 网络通信框架volly
查看>>
poj 题型分类
查看>>
二分查找算法及其变种
查看>>
一个泛型冒泡排序的实现
查看>>
大型分布式网站架构设计与实践 第一章《面向服务的体系架构(SOA)》
查看>>
[From OpenBSD Man Page]PFSYNC
查看>>
自定义View时,用到Paint Canvas的一些温故,讲讲平时一些效果是怎么画的(基础篇 一)...
查看>>
hdu 5131 Song Jiang&#39;s rank list 【2014ACM/ICPC亚洲区广州站-重现赛】
查看>>
Moose File System分布文件系统测试
查看>>
mysql 高可用方案漫谈(二)
查看>>
React Native微信支付开发爬坑之旅
查看>>
年轻人的第一篇博客
查看>>
使用 Vue + Flask 搭建单页应用
查看>>
10分钟免费开启全站https
查看>>
《js高程》 基本概念 上
查看>>
Sketch 快捷键
查看>>
javascript闭包,你大爷永远是你大爷
查看>>
android社会化分享
查看>>