日期:2014-05-18  浏览次数:20630 次

重复提交问题
我在a.jsp提交后进入Action中处理后插入到数据库然后跳到b.jsp显示刚才插入到数据库的数据   ,但是刷新b.jsp就会再插入一条刚才插入的数据   。该如何解决啊??


------解决方案--------------------
你可以不刷新啊 .只要在action里面返回到jsp页面的时候.重新查询一下数据库.然后让其数据显示在页面就可以了.


或者看下struts里面的利用Token机制解决重复重复提交问题 -
------解决方案--------------------

思路:

设置一个状态值,作为隐藏表单域的值,随表单一起提交,同时将该值存放于session中。
用户提交了页面,服务器首先判断请求参数中的值和session中保存的值是否相等,若相等,则清除session中的值,然后执行数据处理的操作。如果不相等,则提示用户已经提交,同时新产生一个值,保存到sessoion中。当 用户重新访问提交页面的时候,见产生的值作为隐藏表单域的输入值。
------解决方案--------------------
正常情况下,是不会刷新的 :)
------解决方案--------------------
a.jsp提交后转向到b.jsp,这是一个过程,你刷新并不是只是刷新b.jsp,而且这个过程再重新做了一遍,这不是错,而是就是这样的~~~

你可以屏蔽掉刷新 或 按FlyByDream() 这位朋友说的试试


java交流群(QQ群: 45459926),有意思的可以加入
------解决方案--------------------
提交到另外一个中间页面 再转发过来啊 一般是这么做的啊
------解决方案--------------------
可以Struts配置得时候定义redirect= "true "
------解决方案--------------------
同步令牌...好像在structs 自带的sample里有例子...
------解决方案--------------------
有意思 还有这么功能 没发现