通过JNDI连接数据库问题

系统,需要支持多种数据库。

用JNDI Datesource 链接数据库,得到数据源。

怎么样能够通过 这个 datasource 知道链接的是那种数据库呢?(oracle、DB2或者sqlServer)

那位有这方面的经验,请指,谢谢!
[b]问题补充:[/b]
恩。这个我也想到了。可以通过驱动城区判断,因为DataSource能够得到驱动程序的名称。

但是感觉这样不太直接,有没有更好的办法呢。

如果没有更好的办法,就只能通过这个字符串,判断了。如果这样,就只能依赖服务器配置的驱动程序,判断数据库的类型。感觉这样也不是最好的办法。

汗!楼上回答欠妥!

现在很多应用服务器都是用 JCA 规范来应对资源管理,
所以 Cilent 端用 jndi 从j2ee容器获得连接时,
可能是托管容器处理的

client的con只是一个rpc的sub,connection存在于服务端,
这样client就不需要db驱动。

托管形式 client sub sql 执行在服务端,再传送给 sub

lz 可以看下jdbc的 API,通过获取 DB 的 meta 信息来了解数据库。(getMetaInfo)

这样做比较保险

你可以判断加载的驱动类呀!不同的DB代表不同的数据连接嘛!