1

我正在使用相同的用户登录凭据并连接相同的 DB在两个不同的浏览器(Brow1 和 Brow2)中登录 JavaEE Web 应用程序。登录后,我正在执行来自 Java 的查询以在 resultSet 中获取一个 excel 文件。如果我同时在两个浏览器中触发查询,我会在 Brow2 中获得 Brow1 的结果集,而 Brow1 会引发空异常错误。

在分析记录器时,我发现 brow1 和 brow2 具有不同的会话 ID。我也尝试过同步,但这不是一种有效的方式并且需要更多时间。

我有没有错过什么。有没有其他方法可以解决这个问题。请帮我。

4

1 回答 1

1

如果您使用不同的浏览器;在服务器上创建不同的会话。虽然如果您在同一个浏览器上使用不同的选项卡;所有这些选项卡共享相同的会话,因为所有这些选项卡共享存储 cookie 的相同浏览器缓存。

独立请求在 Web 服务器上创建独立线程,并在应用服务器上独立处理。所以,现在归结为应用层,如果这两个独立的线程试图访问相同的数据,它们是如何处理的。如果您可以添加您所做的事情;我能想到可能出了什么问题;但我们需要在应用程序级别修复它。

于 2013-01-09T10:10:35.177 回答