首页 > 代码库 > JDBC、JNDI和DBCP的区别

JDBC、JNDI和DBCP的区别

JDBC:Java DataBase Connectivity,java连接数据库和执行SQL语句的API。

 

数据源:Data Source。就是将IP、数据库、用户名、密码封装起来对外只提供一个JNDI名称,在应用中只要调用这个JNDI就能连接数据库,而不需要在代码中写入用户名密码等信息。这样做的好处是,当用户名密码乃至数据库变化时只需要去修改JNDI的xml文件而不需要去修改代码。

 

JNDI:Java Naming and Directory Interface,Java命名和目录接口。JNDI是指使用数据源连接数据库的这种方式,简单地,可以将JNDI理解为所有Data Source的集合。

 

DBCP:DataBase Connection Pool,数据库连接池。数据连接池就是连接数据库的进程的集合。一般的SQL 执行都是“建立数据库连接--执行SQL--关闭数据库连接”,对于频繁连接数据库应用,这样反复“建立连接--关闭连接”是非常耗系统资源的。

 

数据源、JNDI、DBCP都是在中间件配置维护而不是在应用代码中配置维护的。

 

技术分享

 

JDBC、JNDI和DBCP的区别