`
chen422520
  • 浏览: 26391 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

struts2 token实现方式

阅读更多

1

    struts2 的token标签 会在页面产生

 

< input type ="hidden" name ="struts.token.name" value ="struts.token" />
< input type ="hidden" name ="struts.token" value ="KUGRKLACCF1SZEKY1Z8O3KR2RLCRP3KK" />
这两个隐藏域,来确定这个页面唯一,如果刷新或者下次进入这个页面会产生一个新的 struts.token 的值,这样的话,就会防止 用户提交,或者多次提交,或者后退后再次提交 ,产生多条重复数据
2 这个里的token 的产生
new  BigInteger(165, RANDOM).toString(36).toUpperCase();
 
public static final String DEFAULT_TOKEN_NAME = "struts.token";
 
  public static final String TOKEN_NAME_FIELD = "struts.token.name";

  public static String setToken(String tokenName) {
        Map session = ActionContext.getContext().getSession();
        String token = generateGUID();
        try {
            session.put(tokenName, token);
        }
        catch(IllegalStateException e) {
            // WW-1182 explain to user what the problem is
            String msg = "Error creating HttpSession due response is commited to client. You can use the CreateSessionInterceptor or create the HttpSession from your action before the result is rendered to the client: " + e.getMessage();
            LOG.error(msg, e);
            throw new IllegalArgumentException(msg);
        }
        return token;
    }
 
这样就只能这里的tokenName竟然是一个变量量 ,这样的话,就解决了不同页面的key不一样,
对一个页面进行表单重复提交 进行验证,如果出现两个页面 同时添加的时候,就不能都是 默认,不然会使另外一个页面失去有效
 
 
分享到:
评论

相关推荐

    struts2的token实现.

    struts2的token实现.

    用struts使用Token机制来实现防重复提交

    用struts使用Token机制来实现防重复提交

    详解struts2的token机制和cookie来防止表单重复提交

    详解struts2的token机制和cookie来防止表单重复提交 今天在做一个投票系统时要实现防止表单重复提交! 当时就想到了用struts2提供的token机制 struts2的token机制防止表单重复提交: 首先需要在提交的jsp页面(要...

    SH(struts2+Hibernate 3)简单实现注册模块

    简单使用struts2,Hibernate 3实现注册模块 另外使用token方式防止表单重复提交 使用hbm2ddl.auto,透过pojo产生数据库表

    Struts1.x实现防止提交的Token使用示例

    Struts1.x实现防止提交的Token使用示例。工程环境:MyEclipse

    Struts2 in action中文版

    第1章 Struts 2:现代Web框架 2 1.1 Web应用程序:快速学习 2 1.1.1 构建Web应用程序 2 1.1.2 基础技术简介 3 1.1.3 深入研究 6 1.2 Web应用程序框架 7 1.2.1 什么是框架 7 1.2.2 为什么使用框架 8 1.3 Struts 2框架...

    Struts拦截器及token拦截器防止重复提交例子源码

    Struts2拦截器的实现原理相对简单,当请求struts2的action时,Struts 2会查找配置文件,并根据其配置实例化相对的 拦截器对象,然后串成一个列表,最后一个一个地调用列表中的拦截器 三、定义Struts2拦截器。 ...

    深入浅出Struts2(附源码)

    本书是广受赞誉的Struts 2优秀教程,它全面而深入地阐述了Struts 2的各个特性,并指导开发人员如何根据遇到的问题对症下药,选择使用最合适的特性。作者处处从实战出发,在丰富的示例中直观地探讨了许多实用的技术,...

    struts 拦截器实现权限拦截

    struts 拦截器实现权限拦截,例子简单易懂,有详细的注释。

    struts2 用拦截器 实现用户权限登录

    struts2 用拦截器 实现用户权限登录 可以直接运行,只单单用到struts的东西。 struts2 用拦截器 实现用户权限登录 可以直接运行,只单单用到struts的东西。

    java Struts2+hibernate+Spring整合的通讯录

    (1) 通信录实现浏览或查找通信录中记录,能够添加,删除,修改记录等。 (2) 用户处于只有登录之后才可以添加,删除,修改记录;如果没有登录只可以查看信息。 (3) 用户注册,需要通过Struts2字段校验判断用户注册...

    Struts1.3 备忘笔记

    09 Struts_09Token : Structs的令牌机制,避免重复提交问题 10 Struts_10SmartUpload : structs的文件上传 11 Struts_11Internationalize : Structs的国际化和消息文件的使用 12 Struts_12GeneralApply : Structs的...

    struts简单实现用户注册(最新修订)

    一直以来公司都没有用现如今比较前卫的技术,闲来无聊,自己实现了个struts简单注册的例子,目的自己练习用,简单说下我的想法, 其一:想加spring,但是怎么读spring.xml配置文件也得不到它,就放弃了, 其二:利用...

    Struts应用技巧

    struts 技巧运用 1:利用Token解决重复提交 2:copyProperties 3:文件上传 4:等

    jwt手写SSO单点登录框架zip

    手写的JWT,实现SSO框架,将获取到的Token保存在cookie中。简单的练习练习权限框架,提升自己

    低清版 大型门户网站是这样炼成的.pdf

    11.4.1 展示层jsp 2+struts 2标签库实现 711 11.4.2 控制层struts 2实现 720 11.4.3 持久层hibernate 3实现 728 11.4.4 spring 2接管业务逻辑层 730 11.5 小结 733 第12章 站务必备—系统用户管理与流量统计 ...

    Token解决冲突提交

    孙维琴老师的addressbook实例,本人稍作改动,用struts+hibernate实现。含有完整的java代码和数据库脚本,方便调试。

    深入浅出Struts 2 .pdf(原书扫描版) part 1

    书中介绍了如何利用Struts 2 来解决Web 应用开发中的常见问题,同时还深入浅出地探讨了许多能帮助程序员编写Struts 2 应用程序的技巧,如管理页面导航活动、输入验证、国际化和本地化、对Ajax 的支持,等等。...

Global site tag (gtag.js) - Google Analytics