http://862123204-qq-com.iteye.com/blog/1566581

1. Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动

  1. Class.forName("com.mysql.jdbc.Driver");//加载数据库驱动
  2. String url="jdbc:mysql://localhost:3306/databasename";//数据库连接子协议
  3. Connection conn=DriverManager.getConnection(url,"username","password");

此方式由于参数为字符串,因此很容易修改,移植性强。

最常见的注册方式,也是推荐的方式。

2. new com.mysql.jdbc.Driver() ;//创建driver对象,加载数据库驱动

  1. new com.mysql.jdbc.Driver();//创建driver对象,加载数据库驱动
  2. String url="jdbc:mysql://localhost:3306/databasename";//数据库连接子协议
  3. Connection conn=DriverManager.getConnection(url,"username","password");

这里不需要这样写DriverManager.registerDriver(new com.mysql.jdbc.Driver()),原因是com.mysql.jdbc.Driver类的静态代码快里面已经进行了修改的操作

  1. static {
  2. try {
  3. java.sql.DriverManager.registerDriver(new Driver());
  4. } catch (SQLException E) {
  5. throw new RuntimeException("Can't register driver!");
  6. }
  7. }

由new com.mysql.jdbc.Driver()可以知道,这里需要创建一个类的实例。创建类的实例就需要在java文件中将该类通过import导入,否则就会报错,即采用这种方式,程序在编译的时候不能脱离驱动类包,为程序切换到其他数据库带来麻烦

3.System.setProperty("jdbc.drivers","com.mysql.jdbc.Driver");

  1. System.setProperty("jdbc.driver","com.mysql.jdbc.Driver");//系统属性指定数据库驱动
  2. String url="jdbc:mysql://localhost:3306/databasename";//数据库连接子协议
  3. Connection conn=DriverManager.getConnection(url,"username","password");

可以同时导入多个jdbc驱动,中间用冒号“:”分开

比如System.setProperty("jdbc.drivers","XXXDriver:XXXDriver:XXXDriver");

这样就一次注册了三个数据库驱动

总结:推荐1,和2两种方式。
原因:3在编译时需要导入对应的lib。1,2不需要。

mysql的三种驱动类型的更多相关文章

  1. python 连接 mysql 的三种驱动

    连接 mysql 驱动 mysq1-client python2,3都能直接使用 对myaq1安装有要求,必须指定位置存在 配置文件 python-mysql python3 不支持 pymysql ...

  2. php 链接mysql的三种方式对比

    PHP连接Mysql的三种方式: 1.原生的连接方式  原生的连接方式是面向过程的写法 <?php $host = 'localhost'; $database = 'test'; $usern ...

  3. Mysql的三种数据类型

    Mysql的三种数据类型 1.数值类型 2.日期和时间类型 3.字符串类型 00x1 [数值类型] 00x2 [日期和时间类型] 00x3 [字符串类型]

  4. PHP的学习--连接MySQL的三种方式

    记录一下PHP连接MySQL的三种方式. 先mock一下数据,可以执行一下sql. /*创建数据库*/ CREATE DATABASE IF NOT EXISTS `test`; /*选择数据库*/ ...

  5. 使用zabbix监控mysql的三种方式

    使用zabbix监控mysql的三种方式 1.只是安装agent 2.启用模板监控 3.启用自定义脚本的模板监控 zabbix中默认有mysql的监控模板.默认已经在zabbix2.2及以上的版本中. ...

  6. java Data、String、Long三种日期类型之间的相互转换

    java Data.String.Long三种日期类型之间的相互转换      // date类型转换为String类型   // formatType格式为yyyy-MM-dd HH:mm:ss// ...

  7. sql server 性能调优之 资源等待内存瓶颈的三种等待类型

    一.概述 这篇介绍Stolen内存相关的主要三种等待类型以及对应的waittype编号,CMEMTHREAD(0x00B9),SOS_RESERVEDMEMBLOCKLIST(0x007B),RESO ...

  8. Mysql Binlog三种格式介绍及分析【转】

    一.Mysql Binlog格式介绍       Mysql binlog日志有三种格式,分别为Statement,MiXED,以及ROW! 1.Statement:每一条会修改数据的sql都会记录在 ...

  9. SEO三种职位类型:编辑型SEO、技术型SEO、营销型SEO详解

    SEO三种职位类型:编辑型SEO.技术型SEO.营销型SEO详解 网站SEO优化作为营销端的服务之一,这些年也呈现出日新月异的格局.一改过去游兵散将式的小作坊生产模式,不断有力量强大的公司团体加入到这 ...

随机推荐

  1. devpress 的gridview 控件的行拖拽 z

    首先,添加引用:using DevExpress.XtraGrid.Views.Grid.ViewInfo;               gridControl1.AllowDrop = true; ...

  2. js调试--查找dom对象绑定的函数

    点击最右侧的js文件. 选中函数upload_pic_box,右击,选择在控制台中调试,或者在控制台直接输入该函数 点击最后一行代码会打开该函数所在的js文件

  3. CodeChef - QCHEF 分块

    题目链接:http://vjudge.net/problem/174774/origin 题意:给定一个长度为n的序列a[],序列的值不大于m,现在有k个询问,每个询问给定(l,r).让你求出max{ ...

  4. 疯狂房价"逼死"年轻人,别指望中国未来能出人才了

    社会高房价,杀死那个学者 --北京青年学者生存侧记 这一轮,房价又上涨了,只有更疯狂. 几年前,北京三环内的房价突破5万,世人惊呼:没几年,四环5万了,五环5万了:这一轮,北京城乡结合部,哪怕脏乱差之 ...

  5. C#(委托a)

    C#(委托a) public delegate double TheOperator(double x, double y); public class Operators { static publ ...

  6. comebotree树

    comebotree树: java: @RequestMapping(value="/combobox.do") public @ResponseBody String combo ...

  7. Win 10 文件浏览器无法打开

    今天遇到个很奇怪的问题,文件浏览器File Explorer无法正常显示,点击打开后任务栏上已经显示打开了,但是屏幕上却看不到任何窗口,开始以为机子中了恶意的木马,然后就疯狂的查毒,然而并没有解决问题 ...

  8. Windows 7您的凭据不工作

    假设计算机A要远程连接到计算机B 一.参考链接 http://jingyan.baidu.com/article/148a1921a807d34d70c3b143.html 在计算机B上操作 快捷键 ...

  9. Java的算数运算符、关系运算符、逻辑运算符、位运算符

    JAVA的运算符,分为四类: 算数运算符.关系运算符.逻辑运算符.位运算符 算数运算符(9):+  -  *  /  %  ++  -- 关系运算符(6):==  !=  >  >=  & ...

  10. 使用BOOTICE 恢复系统启动项

    使用BOOTICE 恢复系统启动项 我在安装deepin 系统的时候,经常遇到重启进不去系统,每次重启都会进入windows 系统,这让我感到特别头疼,试了好多次都不成功,有些情况是,成功后再次重启又 ...