iteye_11839 2009-12-17 14:02
浏览 302
已采纳

通过JNDI连接数据库问题

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

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

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

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

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

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

  • 写回答

2条回答 默认 最新

  • 宁静-夏天 2009-12-18 16:03
    关注

    汗!楼上回答欠妥!

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

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

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

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

    这样做比较保险

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥30 python代码,帮调试
  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条