转载

JDBC相关

Java DataBase Connectivity

本质是SUN公司制定的一套接口

java.sql.*;(这个软件包里面有许多接口)

接口都有调用者和实现者.

为什么要面向接口编程?

解耦合,降低程序的耦合度,提升程序的扩展力.

为什么sun制定一套JDBC接口?

因为每一个数据库的底层实现原理都不一样.
当sun公司制定了接口,各大数据库纷纷响应提供各自数据库对该JDBC接口的实现类
实现类jar包需要我们去各大数据库官网下载.
这些实现类也叫驱动
所有的数据库驱动都是以jar包的形式存在,jar包中包含许多.class文件

模拟JDBC的本质

//JDBC.java(JDBC接口)

public interface JDBC
    {
        void getConnection();
    }

//MySql.java(MySql驱动)

public class MySQL implements JDBC{
    public void getConnection(){
        System.out.println("连接MySQL数据库成功!");
    }

}
    
//Oracle.java(Oracle驱动)

public class Oracle implements JDBC{
    public void getConnection(){
        System.out.println("连接Oracle数据库成功!");
    }

}

//JavaProgrammer.java(程序员面向接口写的程序)/

import java.util.*;
public class JavaProgrammer
    {
        public static void main(String[] args) throws Exception{
            //JDBC jdbc =new  MySQL();
            //JDBC jdbc =new  Oracle();
            //JDBC jdbc =new  SqlServer();
            
            //创建对象可以通过反射机制.
            ResourceBundle bundle = ResourceBundle.getBundle("jdbc");
            String className = bundle.getString("className");
            Class c = Class.forName(className);
            JDBC jdbc = (JDBC)c.newInstance();
            
            jdbc.getConnection();
            
        }
    }
    
//jdbc.properties(配置文件)

className=MySql

只用修改配置文件中的内容就可以修改程序所连接不同的数据库

不需要关心底层实现,面向接口调方法

JDBC开发前的准备工作,从官网下载对应的jar包,然后将其配置到环境变量classpath中.

.;E:mysql-connector-java-5.1.48mysql-connector-java-5.1.48-bin.jar

前面的.;不能漏掉

以上的配置是针对文本编辑器的方式开发,使用IDEA工具的时候,不需要配置以上的环境变量.

IDEA有自己的配置方式

JDBC编程六步(需要背会)

  1. 注册驱动(告诉Java程序要连接的是哪个数据库)
  2. 获取连接(表示JVM的进程和数据库进程之间的通道打开了,这属于进程之间的通信,重量级的,使用完毕以后一定要关闭)
  3. 获取数据库操作对象(专门执行sq语句的对象)
  4. 执行sql语句(DQL DML...)
  5. 处理查询结果集(只有当第四步执行的是selcet语句的时候,才有第五步)
  6. 释放资源(使用完资源一定要关闭资源.进程间的通信,开启后一定要关闭)
原文  https://segmentfault.com/a/1190000020792940
正文到此结束
Loading...