关于注册驱动的问题

关于注册驱动的问题

我注释了注册驱动的代码,为何还能正常执行,下面是执行的代码

package com.imooc.jdbc.demo1;


import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.ResultSet;

//import java.sql.SQLException;

import java.sql.Statement;


import org.junit.Test;


//import com.mysql.cj.jdbc.Driver;


public class JDBCDemo1 {

@Test

/**

* JDBC的入门程序

*/

public void demo1(){

try {

//Class.forName("com.mysql.cj.jdbc.Driver");

//OR

//new com.mysql.cj.jdbc.Driver();

Connection conn = DriverManager.getConnection("jdbc:mysql:///jdbctest?useSSL=false&serverTimezone=Hongkong&useUnicode=true&characterEncoding=utf-8", "root", "123456");

String sql = "select * from user";

Statement stmt = conn.createStatement();

ResultSet resultSet = stmt.executeQuery(sql);

while (resultSet.next()) {

int uid = resultSet.getInt("uid");

String username = resultSet.getString("username");

String password = resultSet.getString("password");

String name = resultSet.getString("name");

System.out.println(uid+"  "+username+"  "+password+"  "+name);

}

resultSet.close();

stmt.close();

conn.close();

} catch (Exception e) {

// TODO 自动生成的 catch 块

e.printStackTrace();

}

}

}


正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

1回答
好帮手慕阿满 2019-04-08 19:37:15

同学你好,jdbc4.0之后,是不用显式的去加载驱动,DriverManager自动在 classpath 寻找 META-INF/service/java.sql.Driver , 根据其内容注册驱动,所以同学不加载驱动也能运行。这里建议同学加上注册驱动的代码,方便根据代码直接只调连接的是那种数据库。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
Java数据库开发与实战应用2018版
  • 参与学习           人
  • 提交作业       277    份
  • 解答问题       4297    个

Java数据库开发的必备技能,从流行的MySQL数据库开始,到Java原生的数据库管理接口JDBC的使用,再到常用的数据持久化框架MyBatis,让你向Java工程师的目标又迈进了一步!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师