我有一个JSP页面,其中有一个按钮,单击此按钮会执行一些操作,该操作会执行一些数据库更新,成功更新后,用户将导航到另一个页面结尾为URL ...\resultpage.action
。
当我重新加载导航页面resultpage.jsp
时,再次调用该操作会再次更新数据库,这是不可取的。
我希望如果用户重新加载此页面,则应刷新页面,并且不应调用更新数据库的操作类。
如何实现呢?此外,如果有任何方法,加载页面后,其URL应该更改?
答案 0 :(得分:0)
为了避免通过页面刷新重新提交表单的情况,我将创建除标准“成功”之外的结果类型。可能还有其他方法可以做到,但我找到的最简单方法是结果类型redirectAction,它会在成功的数据库更新时返回到相同的操作。
如果使用注释,它看起来像这样:
@Results({
@Result(name = "success", location = "/WEB-INF/content/registration/index.jsp"),
@Result(name = "refresh", type = "redirectAction", location = "register")
})
“刷新”结果将在成功(数据库更新)后期操作时返回,而“成功”则用于显示类型操作。