JavaServlet需要浏览器后退按钮来重新提交请求

JavaServlet需要浏览器后退按钮来重新提交请求,java,jsp,servlets,Java,Jsp,Servlets,这就是我的情况 我有一个jsp,它执行查询并显示数据。在jspa上,我有一个表单,它将发布到一个新的servlet,表单上的操作是“/data”,或者直接发送到servlet。doPost方法将请求转发到我正在处理的一个新jsp(jsp B)。此jsp B允许用户选择第二个数据点,并在提交时将两个数据集转发回jsp B,在jsp B中并排显示数据集以进行比较 现在,jsp B允许用户向下钻取多个不断增加的细节层。每次向下钻取都会向servlet返回一个新的POST,而servlet又将新数据转发

这就是我的情况

我有一个jsp,它执行查询并显示数据。在jspa上,我有一个表单,它将发布到一个新的servlet,表单上的操作是“/data”,或者直接发送到servlet。doPost方法将请求转发到我正在处理的一个新jsp(jsp B)。此jsp B允许用户选择第二个数据点,并在提交时将两个数据集转发回jsp B,在jsp B中并排显示数据集以进行比较

现在,jsp B允许用户向下钻取多个不断增加的细节层。每次向下钻取都会向servlet返回一个新的POST,而servlet又将新数据转发回jsp B。同样,jsp B上的表单有一个动作“/data”,即servlet本身

因此,转到jsp B进行比较,并向下钻取两个级别。现在,用户希望返回上一级。如果用户单击浏览器的“后退”按钮,浏览器将显示错误。然后刷新页面以显示适当级别的数据

我希望“后退”按钮自动返回一个级别,必要时重新提交表单,并显示正确的数据

在研究这一点时,我发现提到了Post/Redirect/Get模式。我还发现,一旦发布了帖子,就应该使用重定向代替转发

如何在不强制用户a)重新开始比较,b)在按下后退按钮后不必点击刷新的情况下实现所需的结果


谢谢你

试试使用Ajax。@11维我想到了。将操作设置为jsp名称,然后使用ajax调用检索和显示数据。如果没有其他可行的建议,我将走这条路。谢谢你的意见。我很重视这一贡献