在使用传统的JDBC连接数据库的时候,以MYSQL为例
Class.forName("com.mysql.jdbc.Driver");
Connection con = DriverManager.getConnection(url, user, password);
为什么要用Class.forName?
看源码:
package com.mysql.jdbc;
import java.sql.DriverManager;
import java.sql.SQLException;
public class Driver extends NonRegisteringDriver{
public Driver() throws SQLException{}
static {
try{
DriverManager.registerDriver(new Driver());
}
catch(SQLException E){
throw new RuntimeException("Can't register driver!");
}
}
}
源码之前没秘密,com.mysql.jdbc.Driver很简单,就是红色的那句,看来是在类的static block里面做的初始化,向DriverManager中注册了MYSQL的驱动实例。
分享到:
相关推荐
Class.forName("com.mysql.cj.jdbc.Driver"); // 注册驱动 Connection conn = DriverManager.getConnection(url, username, password); System.out.println("Connected to the database!"); // 进行数据库操作.....
Class.forName("com.mysql.cj.jdbc.Driver"); Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydatabase", "username", "password"); ``` 3. **`mysql-connector-java-8.0.27....
3. **注册驱动**:在Java代码中,使用`Class.forName("com.mysql.jdbc.Driver")`注册驱动,让JVM知道要用哪个驱动连接MySQL数据库。 4. **建立连接**:使用`java.sql.DriverManager.getConnection()`方法创建到MySQL...
当我们使用JDBC操作MySQL数据库时,通常会在代码中看到`Class.forName("com.mysql.jdbc.Driver")`这一行,这行代码的作用是至关重要的,但很多人可能并不清楚为什么要这样做。本文将深入探讨这个问题,以及其背后的...
在上述的JDBC示例中,我们看到`Class.forName("com.mysql.jdbc.Driver")`这行代码,其作用是加载并初始化`com.mysql.jdbc.Driver`这个数据库驱动类。在JDBC中,每个数据库驱动都会实现`java.sql.Driver`接口,并提供...
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); String url = "jdbc:oracle:thin:@localhost:1521:orcl"; // orcl为数据库的SID String user = "test"; String password = "test"; Connection ...
注意,为了使JDBC驱动生效,还需要在Java应用程序启动时注册驱动,通常是通过`Class.forName()`方法,但现代的JDBC驱动通常会自动注册,例如MySQL Connector/J 4.1及以上版本。 总的来说,MySQL JDBC驱动包对于Java...
Class.forName("com.mysql.jdbc.Driver"); Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/myDB", "username", "password"); ``` 在J2EE应用中,通常会使用DataSource接口来管理...
这是MySQL 5.7版本以上数据库的连接驱动jar包,对应加载驱动程序代码: Class.forName(...温馨提示:如果你的MySQL 是5.6版本,加载驱动程序代码为 Class.forName("com.mysql.jdbc.Driver");不是这个资源哟~
引言 如果熟悉使用JDBC来连接数据库的同学一定很清楚连接数据库的代码中一定会有依据Class.forName ... Class.forName(com.mysql.jdbc.Driver); connection = DriverManager.getConnection(jdbc:
2. 注册驱动:`Class.forName("oracle.jdbc.driver.OracleDriver");` 3. 创建连接:`Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@hostname:port/service_name", "username", "password");` ...
"com.mysql.cj.jdbc.Driver"是这个驱动程序中的具体实现类,当你在Java代码中通过`Class.forName("com.mysql.cj.jdbc.Driver")`来加载这个类时,JDBC驱动就会被初始化,从而可以创建到MySQL服务器的连接。...
`JdbcDriver.rar`这个压缩包文件很可能包含了一系列不同数据库的JDBC驱动程序,这些驱动允许Java程序与各种类型的数据库进行交互。`JdbcDriver`这个名称暗示了文件可能包括了多个数据库厂商的JDBC驱动类库,比如...
Class.forName("oracle.jdbc.driver.OracleDriver"); Connection conn = DriverManager.getConnection( "jdbc:oracle:thin:@localhost:1521:ORCL", "username", "password"); ``` 总的来说,这个压缩包提供的是...
1. 加载驱动:`Class.forName("com.mysql.jdbc.Driver")` 这行代码的作用是确保`com.mysql.jdbc.Driver` 类被加载并且执行了类的静态初始化块。在这个静态块中,驱动类会自动注册自身到`java.sql.DriverManager`。这...
Class.forName("com.mysql.jdbc.Driver"); // 创建连接 Connection conn = DriverManager.getConnection(url, username, password); System.out.println("Connected to the database!"); // ... 执行SQL操作 }...
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance(); //Sql Server7.0/2000 数据库 Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance(); //DB2 数据库 Class.froName(...
1. 加载驱动:通过`Class.forName("com.mysql.jdbc.Driver")`方法加载MySQL的JDBC驱动。 2. 创建连接:使用`DriverManager.getConnection()`方法,传入数据库URL、用户名和密码来建立与MySQL服务器的连接。例如: `...
Class.forName("com.mysql.jdbc.Driver"); ``` 3. **建立连接**:然后,你可以使用`DriverManager.getConnection()`方法建立到MySQL服务器的连接。这通常需要提供数据库URL、用户名和密码: ```java String url...
2. **注册驱动**: 在程序运行时,需要调用`Class.forName("com.mysql.jdbc.Driver")`来注册驱动。这个过程告诉Java虚拟机(JVM)使用哪个驱动来连接MySQL数据库。不过在JDBC 4.0及更高版本中,由于实现了`java.sql....