什么是更快:JDBC还是JNDI?

alt*_*ern 17 java mysql database jndi jdbc

我有两个选项来配置我的应用程序数据库连接 - 一个使用JDBC,另一个使用JNDI.就这些连接类型与数据库的工作速度而言,最佳选择是什么.

我理解这些是使用不同原则的两种不同类型的数据库连接(JDBC是直接数据库连接,JNDI是应用程序服务器端的数据库连接池配置).但是否有其他一般的JDBC/JNDI优缺点可能比运行速度更重要?如果是的话,他们是什么?

sta*_*ker 30

数据库连接始终使用JDBC.使用JNDI,您可以在目录服务中注册数据源,该服务可以通过其名称进行查找.因此,JDBC和JNDI完全不同,不可互换.


Adr*_*hum 21

我打赌你的意思是选择

  1. 在您的应用程序中手动创建数据源或jdbc连接,或
  2. 在容器中设置数据源,应用程序通过JNDI查找数据源

如果是这种情况,请尽可能坚持2.

选择的主要原因绝不是性能差异.在大多数情况下,坚持2的原因是,您需要2来从容器中获取更多高级功能,例如,分布式事务.