現在版本的jdbc連接方式和原來不一樣了,
假如你使用String driver = "com.mysql.jdbc.Driver";
會拋出錯誤:
Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'. The driver is automatically registered via the SPI and manual loading of the driver class is generally unnecessary.
現在連接方式變了
修改方式兩種
- String driver = "com.mysql.cj.jdbc.Driver";
- 去除Class.forName(driver); 字段
package wu.vkcyan.jdbc;
import java.sql.*;
import org.junit.Test;
import com.mysql.cj.jdbc.Driver;
public class jdbc_1 {
@Test
public void Test() throws SQLException, ClassNotFoundException {
String driver = "com.mysql.cj.jdbc.Driver";
String URL = "jdbc:mysql://localhost/exam?useSSL=false&serverTimezone = UTC&";
/*
* 所有的java.sql.Driver實現類.都被提供static快.塊類代碼就會把自己注冊了
* jdbc4.0后.每個jar包中,META-INF目錄下都service/java.sql.Driver文件里面內容是com.mysql.cj.jdbc.Driver,每次啟動jdbc會自動掃描,添加,所以可以不寫
*/
Class.forName(driver); //注冊啟動類 ,也就是下面的代碼的反射,他里面有個靜態函數,自己就把自己注冊了
// Driver driver= new Driver();
// DriverManager.registerDriver(driver);
Connection con=DriverManager.getConnection(URL,"root","000000");
System.out.println(con);
}
}