jdbc原理
Posted 跳动de手指
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jdbc原理相关的知识,希望对你有一定的参考价值。
sun公司提出标准,让各大数据库厂商遵循这个规则;
这个标准就叫jdbc,其实就是对类的规范,接口就是对类的规范,jdbc就是提供了一堆的接口;
各大数据库厂商提供各自的实现类,而这个实现类我们叫做驱动类;
jdbc提供的驱动接口是java.sql.Driver;
package cn.code.jdbc; import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import org.junit.Test; /** * jdbc原理: * * */ public class NumberTwo { @Test public void fun1(){ String url = "jdbc:mysql://localhost/mydb1"; String driverclassname="com.mysql.jdbc.Driver"; String username="root"; String password="123"; //加载驱动类,实际上是注册驱动,所有的java.sql.Driver的实现类,都提供了static块, //块内的代码就是把自己注册到DriverManager中! //调用DriverManager的registDriver(new Driver());方法 try { //Class.forName(driverclassname);相当于执行下面两句,源码中有一个静态代码块,帮我们执行了registDriver(driver);方法 //jdbc4.0之后每个驱动jar包中,在METE-INF/service目录下提供了一个名为java.sql.Driver的文件。文件的内容就是该接口的实现类名称; //会自动扫描加载类名,不需要手动加载;但是为了兼容来版本,最好还是写上 com.mysql.jdbc.Driver d = new com.mysql.jdbc.Driver(); DriverManager.registerDriver(d); Connection con = DriverManager.getConnection(url, username, password); } catch (SQLException e) { // TODO Auto-generated catch block e.printStackTrace(); } } }
以上是关于jdbc原理的主要内容,如果未能解决你的问题,请参考以下文章
mysql jdbc源码分析片段 和 Tomcat's JDBC Pool