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

JDBC原理

JDBC操作数据库之查询数据

回头探索JDBC及PreparedStatement防SQL注入原理

如何在片段中填充列表视图?