首先注明一点:这里我用的 mysql-connector-java 包是 8.0.13 版本的。
1、下载mysql-connector-java包
jdk目前是没有内置这个包的,所以需要先下载,附上一个下载地址:http://www.codingutil.com/searchJar.html
2、将下载好的包添加进项目
这里我用的是eclipse,其他编译器导入方法自行谷百。
然后点击:Add External JARS
添加完之后如下图:
然后项目文件夹下就会多出:
3、具体代码中的问题
package test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class StudentTest {
public static void main(String[] args) {
String driveName = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://127.0.0.1:3306/student";
String user = "root";
String pass = "123456";
try {
Class.forName(driveName);
// 连接方法一
Connection con = DriverManager.getConnection(url, user, pass);
// 连接方法二
//String URL = "jdbc:mysql://127.0.0.1:3306/student?user=root&password=123456&serverTimezone=GMT%2B8";
//Connection con = DriverManager.getConnection(URL);
Statement state = con.createStatement();
String querySql = "select * from student1";
ResultSet result = state.executeQuery(querySql);
while(result.next()) {
System.out.println("学号:" + result.getInt("Id"));
System.out.println("姓名:" + result.getString("name"));
System.out.println("年龄:" + result.getInt("age"));
System.out.println();
}
con.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
首先这种写法会报错 :
意思就是:com.mysql.jdbc.Driver 这种写法已经弃用了,最新的写法是:com.mysql.cj
.jdbc.Driver
然后这个报错就解决了。再运行,又会报错 :
这个mysql官网也提到了,是因为 mysql 返回的时区有问题,所以这里需要显示指定时区:在url上加参数serverTimezone=GMT(如果想返回北京时间,则:serverTimezone=GMT%2B8)
最后更完整代码如下 (更改的地方我用 *
做了标记) :
package test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class StudentTest {
public static void main(String[] args) {
* String driveName = "com.mysql.cj.jdbc.Driver";
* String url = "jdbc:mysql://127.0.0.1:3306/student?serverTimezone=GMT%2B8";
String user = "root";
String pass = "123456";
try {
Class.forName(driveName);
// 连接方法一
Connection con = DriverManager.getConnection(url, user, pass);
// 连接方法二
//String URL = "jdbc:mysql://127.0.0.1:3306/student?user=root&password=123456&serverTimezone=GMT%2B8";
//Connection con = DriverManager.getConnection(URL);
Statement state = con.createStatement();
String querySql = "select * from student1";
ResultSet result = state.executeQuery(querySql);
while(result.next()) {
System.out.println("学号:" + result.getInt("Id"));
System.out.println("姓名:" + result.getString("name"));
System.out.println("年龄:" + result.getInt("age"));
System.out.println();
}
con.close();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
运行代码 :
成功!
还没有人抢沙发呢~