解决刷新重复提交的方法有很多种,如:ajax,token.
这里我用的是redirect来防止页面刷新重复提交.
适用场景:登录页面点击登录后跳转登录成功页面,等待session过期后刷新页面,重新回到登录页面.
//登录方法旧
@RequestMapping("/loginOn")
public String login(HttpServletRequest request,HttpServletResponse response){String username = request.getParameter("username");
String password = request.getParameter("password");
//此处省去业务.....
return "admin"; //return "admin" 跳转到admin.jsp页面
}
一开始本人使用的是上面的方法,登录成功后直接跳转到admin.jsp页面,但是session过期后刷新,用户名和密码会任然存在,并且重复了一遍提交动作.改成如下代码即可:
//登录方法新
@RequestMapping("/loginOn")
public String login(HttpServletRequest request,HttpServletResponse response){String username = request.getParameter("username");
String password = request.getParameter("password");
//此处省去业务.....
return "redirect:/user/loginByadmin";
}
@RequestMapping("/loginByadmin")
public String loginByadmin(HttpServletRequest request,HttpServletResponse response){
System.out.println("用户登录....");
return "admin" ;
}
ps:由于各种原因限制,有的小伙伴可能用不了我的实现代码.但是编程重要的是思路,把你原来的页面跳转方法换成redirect重定向方法,我相信一定也能解决重复提交的问题.