【发布时间】:2017-02-24 00:04:20
【问题描述】:
我正在研究如何设置 Java EE 数据库(例如 Tomcat)与数据库(比如说 Oracle)的连接。
根据我正在阅读的内容,为每个用户建立专用连接不如使用“连接池”有效,因此这通常是首选设置。
这会导致以下问题:
问题 1) 如何最好地区分用户以确保他们不会以不正确的访问权限进行连接。例如,数据使用者不会以与管理员相同的权限连接。
根据我的表面理解,可能会为不同类别的用户设置不同类型的连接池,但显然 admin 会小得多,或者可能使用过滤器。
问题 2) 如何使用连接池跟踪特定人员所做的更改。似乎每个人都有相同的登录名?如果是这样,我猜登录身份验证是由 Web 服务器本身完成的,然后才能连接到数据库本身。
【问题讨论】:
-
您似乎相信/希望应用程序用户和数据库用户是同一件事。对于 Web 应用程序,情况并非如此。 Web 应用程序使用单个数据库用户连接到数据库,授予对数据库中数据的完全访问权限。由应用程序自己进行最终用户身份验证和授权检查,以确定最终用户可以访问应用程序的哪个部分。
-
顺便说一句,尽量不要有“动态”连接池。
标签: java oracle tomcat jdbc connection-pooling