一、概念和理解:

①.jdbcJava Data Base Connectivity,java数据库连接,最为传统的一种方式,直接连接操作数据库,需要连接时创建连接,使用结束时销毁连接。

②.Connection pool:连接池,连接池的出现是由于传统的jdbc连接,在请求量比较大的情况下将频繁的创建、销毁连接,然而这里有两个问题:
    1.创建、销毁连接本身是比较耗费系统资源的一种操作。
    2.数据库的连接是有固定的数量的,这种资源是比较昂贵的。
③.jndi:java naming and directory interface,java命名目录接口,是sun公司提出的一种标准的java命名接口。提供客户端接口api,可以使开发者不必关心数据库的username、password、driver等等都是什么,而是通过API接口直接调用。说白了就是使用xml配置服务器全局共用的数据源,开发者通过接口直接来调取使用。多说一句,理解jndi可以和理解servlet-api.jar、jsp-api.jar一样,Sun公司只是提供一个接口规范,具体实现由服务器来实现。比如:使用tomcat就由tomcat来实现这个接口,使用jboss就由jboss来实现这个接口。
 
二、关系定位
那么他们三者之间的关系是什么呢?
    jndi是一个树结构,树上绑定了很多dataSource,这些dataSource用来和连接池交互,可以理解为Connection pool的上层结构。
    Connection pool则用来维护管理固定数量的连接,直接和db层进行操作。
    借用网上的一张图,算了还是自己画一张吧,加深印象:
jdbc、Connection pool、jndi的理解和关系
 
 
 
 





相关文章:

  • 2021-08-13
  • 2021-12-13
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-12-07
  • 2022-12-23
  • 2021-07-14
猜你喜欢
  • 2021-08-06
  • 2021-06-16
  • 2021-12-28
  • 2022-02-10
  • 2022-12-23
  • 2021-07-26
  • 2021-10-20
相关资源
相似解决方案