JDBC 8.0.11 下载百度云链接:https://pan.baidu.com/share/init?surl=CG5VPBVAIoBaXYQdSrgn9g 提取码:v60p
一.加载JAR包:
在你的项目中新建一个lib的文件夹,将下载好的jar包复制到lib文件夹中,右键点击jar包->Buid Path->Add Buid Path.
二.5.0.X版本与8.0.X版本的区别
1. 5.0.X版本连接的驱动地址为:"com.mysql.jdbc.Driver",而8.0.X版本的更改为:"com.mysql.cj.jdbc.Driver"
2.建立连接时url增加了一些参数: 5.0.X版本的url为String url = "jdbc:mysql://localhost:3306/student"
而8.0.X版本的需要在后面加上一串字母变为:String url = "jdbc:mysql://local:3306/student?&useSSL=false&serverTimezone=UTC"
三.连接数据库读取数据
- 用Navicat Premium中建一张数据表
- java连接数据库代码:
package mysql.test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.ResultSet;
import java.sql.SQLException;/**
*
* @author: Doomed
* @date: 2018/7/20
* @place: usth
*
*/
public class MysqlDemo {
public static void main(String[] args){
// 加载数据库驱动 com.mysql.jdbc.Driver
String driver = "com.mysql.cj.jdbc.Driver";
// 获取mysql连接地址
String url = "jdbc:mysql://localhost/student?&useSSL=false&serverTimezone=UTC";
// 数据名称
String username = "root";
// 数据库密码
String password = "123456";
// 获取一个数据的连接
Connection conn = null;
// 获取连接的一个状态
try{
Class.forName(driver);
//getConnection()方法,连接MySQL数据库!
conn=DriverManager.getConnection(url,username,password);
if(!conn.isClosed())
System.out.println("数据库连接成功!");
//创建statement类对象,用来执行SQL语句!
Statement Statement=conn.createStatement();
//要执行的SQL语句
String sql="select * from info" ;
//ResultSet类,用来存放获取的结果集!
ResultSet rs=Statement.executeQuery(sql);
System.out.println("-------------------------------");
System.out.println("执行结果如下所示:");
System.out.println("-------------------------------");
System.out.println("学号" + "\t" + "姓名"+"\t");
System.out.println("-------------------------------");
String id=null;
String name=null;
while(rs.next()){
//获取‘学号’这列数据
id=rs.getString("number");
//获取‘姓名’这列数据
name=rs.getString("name");
//输出结果
System.out.println(id+"\t"+name+"\t");
}
rs.close();
conn.close();
}
catch(ClassNotFoundException e){
//数据库驱动类异常处理
System.out.println("数据库驱动加载失败!");
e.printStackTrace();
}
catch(SQLException e1){
//数据库连接失败异常处理
e1.printStackTrace();
}
catch(Exception e2){
e2.printStackTrace();
}
finally{
System.out.println("-------------------------------");
System.out.println("数据库数据获取成功!");
}
}
}
- 执行结果:
(总结一句话:新版的就是事多)
文章借鉴:https://www.jianshu.com/p/582ae6d91154 与 https://blog.csdn.net/yangdan1025/article/details/80591012