JAVA学习笔记17:JDBC Driver
来源:互联网 发布:android aop 编程 编辑:程序博客网 时间:2024/06/14 15:02
摘录了一些代码片段,java.sql.DriverManager类包含了一个static属性和一个static方法,这个static属性是一个集合,而static方法的作用是将java.sql.Driver接口的子类对象添加进这个集合,驱动程序就是java.sql.Driver接口的子类,由各数据库厂商提供,每个子类中都包含一个static代码块,代码块中通过DriverManager类直接调用其static方法传入一个本类的实例化对象,只要一个驱动程序被加载就会执行其static代码块,DriverManager类中也就包含了该驱动程序的实例化对象了,然后"Attempts to establish a connection to the given database URL. The DriverManager attempts to select an appropriate driver from the set of registered JDBC drivers."(试图建立到给定数据库URL的连接。DriverManager试图从已注册的JDBC驱动程序集中选择一个适当的驱动程序。)
package org.gjt.mm.mysql;import java.sql.SQLException;public class Driver extends com.mysql.jdbc.Driver{ public Driver() throws SQLException{ super(); }}///////////////////////////////////////////////////////////////////////////////////////////////////////////////package com.mysql.jdbc;import java.sql.SQLException;public class Driver extends NonRegisteringDriver implements java.sql.Driver{ static{try{java.sql.DriverManager.registerDriver(new Driver()); }catch(SQLException E){ throw new RuntimeException("Can't register driver!"); } } public Driver() throws SQLException{}}///////////////////////////////////////////////////////////////////////////////////////////////////////////////package java.sql;import java.util.concurrent.CopyOnWriteArrayList;public class DriverManager{ // List of registered JDBC drivers private final static CopyOnWriteArrayList<DriverInfo> registeredDrivers = new CopyOnWriteArrayList<>(); public static synchronized void registerDriver(java.sql.Driver driver) throws SQLException{ registerDriver(driver, null); } public static synchronized void registerDriver(java.sql.Driver driver,DriverAction da) throws SQLException{ if(driver!=null){ registeredDrivers.addIfAbsent(new DriverInfo(driver,da)); }else{ throw new NullPointerException(); } }}
0 0
- JAVA学习笔记17:JDBC Driver
- JAVA JDBC 学习 笔记
- JAVA JDBC学习笔记
- Java JDBC 学习笔记
- Java JDBC学习笔记
- JDBC-----JAVA 学习笔记
- java jdbc driver
- mongo-java-driver -3.2.2学习笔记-09-driver-async
- java的JDBC学习笔记
- Java学习笔记之JDBC
- Java JDBC 学习笔记1
- Java JDBC 学习笔记1
- java学习笔记-jdbc篇
- java mysql JDBC Driver详解
- Java - Database JDBC Driver Class
- platform driver 学习笔记
- wifi driver 学习笔记
- wifi driver 学习笔记
- 英特尔VR带你畅游纽约时装周
- iPhone 7 Plus发布双摄…
- VR运动机制详细调查报告出炉 …
- 探究VR/AR行业走势
- VR支付技术能否支撑起新的浪潮
- JAVA学习笔记17:JDBC Driver
- Java线程基础(2)-实现线程的三种基本方法
- Leetcode 74. Search a 2D Matrix & 240. Search a 2D Matrix II
- 双向管道的,两个程序之间的交互
- windows API 封装
- Debian下使用apt-get安装 Nginx + MySQL + PHPMyAdmin 备忘
- 安装windows服务
- Linux下安装python的swampy包
- 机器学习-研究人员-博客