使用JDBC和DataSource的区别?

2025-03-24 14:28:04
推荐回答(1个)
回答1:

JDBC -最基本的连接数据库的方式, 每次对数据库打交道的时候 ,连接数据库是需要实例下你实现连接数据库的方法或者类。
JNDI DataSource 英文全称是:Java Naming and Directory Interface java 命明接口,当服务启动时 事先把连接数据库的已经连好多条,具体多少条你可以设置,存放在tomcat容器里,用的时候可以直接使用, 不用再实例化得到连接, 相对与jdbc效率要快点 ----我的通俗理解

JNDI与JDBC:
JNDI提供了一种统一的方式,可以用在网络上查找和访问服务。通过指定一个资源名称,该名称对应于数据库或命名服务中的一个纪录,同时返回数据库连接建立所必须的信息。
代码示例:
try{
Context cntxt = new InitialContext();
DataSource ds = (DataSource) cntxt.lookup("jdbc/dpt");
}
catch(NamingException ne){
...
}

/**补充*/
还有用odbc 数据源连接 数据库
连接数据库的方法还不止这几种

主要看你们公司的项目的需求与框架设计
如果你在一个比较成熟的公司,这些你都不用去管,连接数据库这些底层的东西别人早就搭好平台。你只是需要问“如何调用”就ok了
jdbc 是最基本的连接
JNDI 一般是hibernate中使用比较多

DataSource里能配置很多东西,如最大连接数等