临时表和连接池

时间:2013-08-08 08:32:18

标签: jboss informix

我使用JBoss 7提供的连接池,并在每次操作后执行connection.close()。

但是当我创建一个临时表时,它不会留给当前用户,因为他正在使用数据库中的新会话(由于connection.close()和pooling)。

例如,我在动作中创建临时表。用户更改页面。新动作必须在临时表中进行查询,但这不再存在。

所以,我真的不知道如何使用这种架构提供临时表。

1 个答案:

答案 0 :(得分:1)

临时表与连接池相结合意味着临时表的请求范围。您希望拥有会话范围临时表。

我不知道开箱即用的解决方案。所以选项是

  1. 使用前缀/后缀创建普通表格关联这些与用户
  2. 在整个会话期间为用户使用相同的连接
  3. 重写应用程序:完全读取数据,而不是临时表,并将其存储在 HTTP会话中。可能数据库可以分页,因此不需要缓存中间结果等。
  4. 选项1和2需要清理,尤其是在会话未正常关闭的情况下。选项2可能需要许多资源。所以我会研究第三种选择,即使它似乎是最笨拙的选择。