我问题是;成功提交表单后,跳到在提交到的那个页面,我刷新一次他就执行一次。
比如我一个向数据库添加信息。我刷新一次就提交同样的一次比如下面的servlet中的代码:count = Integer.parseInt(cookie.getValue()) + 1;
cookie.setValue(count + "");// 重新设置cookie累加后的值
cookie.setMaxAge(60 * 60 * 24);// 有效时间 60s*60s*24 = 一天
response.addCookie(cookie);// 返回到客户端
out.println("你是第" + count + "次登录该网页。");// 页面显示登录该网页的次数没刷新一次这个servlet其中count就会累加一,这么才能防止??
请各位帮帮忙
比如我一个向数据库添加信息。我刷新一次就提交同样的一次比如下面的servlet中的代码:count = Integer.parseInt(cookie.getValue()) + 1;
cookie.setValue(count + "");// 重新设置cookie累加后的值
cookie.setMaxAge(60 * 60 * 24);// 有效时间 60s*60s*24 = 一天
response.addCookie(cookie);// 返回到客户端
out.println("你是第" + count + "次登录该网页。");// 页面显示登录该网页的次数没刷新一次这个servlet其中count就会累加一,这么才能防止??
请各位帮帮忙
如果struts有token,你可以了解下它的原理。
其实就是表单中一个session的key 随机的key
如果表单的request得到的key和session的key不一样就是刷新了
每次刷新会重新生成一个key,设置到session中
并用隐藏表单域设置form中
response.redirect("xxxxx?count=" + count );
统计登陆次数,使用cookie或session记录下登陆时间,统计前判断时间差,如果时间过短就不统计