struts2学习笔记之十六(token标签)
来源:互联网 发布:mysql frm hy000 编辑:程序博客网 时间:2024/06/07 12:16
token
为了防止重复提交数据,可以使用token标签,使用token标签之后,会自动生成一个hidden的GUID,提交的时候会将GUID保存到session中,然后根据提交的GUID和保存的GUID,判断是否是同一个 GUID,从而确定是否是同一次提交。如果是的话就返回一个invalid.token的逻辑视图,所以也需要配置invalid.token的物理视图。
<input type="hidden" name="struts.token.name" value="token" /><input type="hidden" name="token" value="M31Z4E9EQ04UR8MRUTB3MU9X5VCO1SS1" />
上述代码就是程序自动添加的hidden,由上也就可知,自定义名字时要避免上述的名字
使用
1、为了使用token,需要在页面中引入标签<s:token/>
2、添加token拦截器(为包指定token或者为action指定token)
<!--为 Action 启用 token--><package name="login" extends="struts-default"> <action name="Login" class="org.struts2.action.Login"> <interceptor-ref name="defaultStack" /> <interceptor-ref name="token"/> <result name="invalid.token">/WEB-INF/content/wrong.jsp</result> <result>/WEB-INF/content/welcome.jsp</result> </action> </package><!--为包启用 token--><package name="lee" extends="struts-default"> <interceptors> <interceptor-stack name="myStack"> <interceptor-ref name="token"/> <interceptor-ref name="defaultStack" /> </interceptor-stack> </interceptors> <default-interceptor-ref name="myStack" /> <action name="page1" class="org.bruce.Page1"> <result>/page1.jsp</result> <result name="invalid.token">/page1error.jsp</result> </action></package>
3、配置invalid.token的物理视图
实例
1、jsp页面添加<s:token/>
<s:form action="Login" > <s:token name="token"/> <s:textfield name="user.name" label="姓名"/> <s:textfield name="user.password" label="密码"/> <s:submit /></s:form>
2、配置token拦截器和invalid.token的物理视图
<package name="login" extends="struts-default"> <action name="Login" class="org.struts2.action.Login"> <interceptor-ref name="defaultStack" /> <interceptor-ref name="token"/> <result name="invalid.token">/WEB-INF/content/wrong.jsp</result> <result>/WEB-INF/content/welcome.jsp</result> </action> </package>
0 0
- struts2学习笔记之十六(token标签)
- J2EE系列之Struts2学习笔记(十六)--Struts2标签(数据标签、控制标签)
- J2EE系列之Struts2学习笔记(十七)--Struts2标签(界面标签、其他标签)
- Struts2学习笔记之<s:token/>防止表单重复提交
- Struts2学习笔记之<s:token/>防止表单重复提交
- struts2学习笔记之十二(控制标签)
- struts2学习笔记之十三(数据标签)
- Struts2学习笔记(八)Session Token机制
- Android学习笔记(十六):include标签的使用
- Struts2学习笔记(十六) 文件上传(File Upload)
- Struts2学习笔记(十六)异步传输机制Json插件
- struts2标签学习笔记
- struts2标签学习笔记
- Struts2标签学习笔记
- struts2标签学习笔记
- 《struts2权威指南》学习笔记之struts2表单标签
- 《struts2权威指南》学习笔记之struts2 ajax标签
- struts2学习笔记之十三(表单标签和非表单标签)
- AES加密解密(使用php扩展mcrypt实现AES加密)
- oracle rac IO 隔离的存储SCSI锁原理
- 北大光华学院学生研究报告-关于超级表格创业
- POJ 1337 A Lazy Worker(DP)
- 3-6
- struts2学习笔记之十六(token标签)
- 单例设计模式 浅谈
- Oracle存储过程update受外键约束的主键值时完整性冲突解决方案
- HTML锚点&JSP锚点
- 第六章习题汇总
- Median of Two Sorted Arrays
- 浏览一天的收获
- 代码学习-Linux内核网卡收包过程(NAPI)
- HDU--2032