【发布时间】:2010-12-09 16:38:38
【问题描述】:
我们有一个 Java J2EE 应用程序,它为每个数据库行插入/更新使用单独的 Web 服务调用。事实证明这太慢了。他们让我“快速”修复它。我计划将所有 Web 服务调用转换为纯 JDBC。为此,我需要从池中获取 JDBC 连接,然后在多种不同的方法中使用它。我需要在多个 DAO 中使用相同的 JDBC 连接将它们全部串在一起形成一个数据库事务。我可以显式地将 JDBC 连接传递给每个需要它的 DAO,但这需要我更改大量方法签名以及大量单元测试(这与“快速”部分背道而驰)。
我正在尝试想出一个好方法,将 JDBC 连接放在某个地方,然后在需要它的方法中获取它,而不必在任何地方显式地传递它。我们不能在这个项目上使用 Spring、JPA 或 Hibernate,因为支持团队不支持这些技术。我可以将 JDBC 连接放入 EJB,但我不确定它的可靠性如何。我可以创建一个自定义 Singleton 来管理每个用户(会话?)的数据库连接,但我必须小心线程安全。如果有人以前尝试过这样做,我将不胜感激。
【问题讨论】:
标签: java jdbc jakarta-ee database-connection