0

我有一个 Web 应用程序,我从用户那里获取一些输入,当用户单击提交按钮时,会查询数据库并将结果显示在 html 页面中。现在,我有一个新要求,页面上有一个链接(用户填写详细信息的jsp页面),单击该链接必须显示之前单击提交按钮后显示的结果(最新结果)但应该不再查询数据库。一个例子应该清楚

比方说,用户在页面中填写详细信息并第一次单击提交。显示的结果是“APPLE”。现在,同一用户返回并单击他填写详细信息的同一页面上的链接(例如“详细信息”)。同时,数据库中的值已更改为 MANGO。现在,当用户单击此详细信息链接时,结果页面应显示 APPLE 而不是 MANGO(当用户单击提交按钮而不是单击“详细信息”链接时应显示 MANGO)

如何做到这一点?我不想使用屏幕抓取解决方案。有更好的方法吗??

4

3 回答 3

0

我认为您可以在用户提交按钮时轻松缓存页面。当用户单击链接时,会显示您页面的缓存版本。如果他再次单击提交,则清除旧缓存并生成新缓存。您的旧链接将指向您的缓存文件,所以一切都会好起来的。

于 2012-07-09T11:49:27.197 回答
0

显示陈旧数据而不是显示当前数据是一个很奇怪的要求,但如果你真的想这样做,你可以只将第一个查询的结果存储在会话中,然后从会话中获取详细信息,而不是从数据库。

或者您可以将第一个查询的结果存储在某个数据库表中,并从该数据库表中获取详细信息,而不是从“真实”数据库表中获取它们。

于 2012-07-09T10:33:02.720 回答
0

有两种方法:

  • 在客户端存储详细信息

在第一次请求期间使用 AJAX 并将详细信息存储在客户端。并在以后需要时使用这些详细信息。

  • 在服务器端存储详细信息

在第一次请求期间,将详细信息存储在用户会话中,并在您需要时从中获取。

于 2012-07-09T10:33:32.873 回答