zoukankan      html  css  js  c++  java
  • 总结 15/4/27

    表单重复提交

    1.什么是表单重复提交

    在不刷新表单页面的情况下:

      》多次点击提交按钮

      》已经提交成功,按"回退"之后,再点击"提交按钮"

      》在控制器响应页面的形式为转发情况下,若已提交成功,然后几点刷新(或者F5)

    注意:》若刷新表单页面,再提交表单不算是重复提交

       》若使用的是redirect的响应类型,已经提交成功后,再点击刷新不算重复提交

    表单重复提交的危害:

      》加重服务器负担

      》可能导致错误操作

    struts2 解决表单重复提交问题

    1.在s:form中添加s:token 子标签

      》生成一个隐藏域

      》在session 添加一个属性值

      》隐藏域中的值和session中的属性值是一致的。

    2.使用Token或TokenSession拦截器

      》这两个拦截器均不在默认的拦截器栈中,所以需要手工配置

      》若使用Token拦截器,则需要配置一个token.valid 的 result

      》若使用TokenSession拦截器,则不需要配置任何其他的result

    3.使用Token或TokenSession拦截器的区别

      》都是解决表单重复提交问题

      》使用Token拦截器会转到token.valid 这个 result

      》使用TokenSession 拦截器则还会响应那个目标页面,但不会执行目标TokenSession的后续拦截器,好像什么都没发生一样!

    4.注意使用s:actionerror标签来显示重复提交的错误消息,改错误消息可以在国际化资源文件中覆盖

  • 相关阅读:
    epplus
    http://www.cmake.org/
    patheditor2
    emgu cv
    OpenCV
    Tesseract
    Blendar基金会
    安装服务windows,installutil
    R 软件
    历史为什么选择C语言?事实证明:暮年的C语言,依旧宝刀未老!
  • 原文地址:https://www.cnblogs.com/yydeyi/p/4460708.html
Copyright © 2011-2022 走看看