JDBC四个核心对象(这几个类都是在java.sql包中)
DriverManager: 用于注册驱动
Connection: 表示与数据库创建的连接
Statement: 执行SQL语句的对象
ResultSet: 结果集或一张虚拟表
注意:
MySQL数据驱动就是个坑,坑的我不要不要的,网上一堆教学视频照着写出一堆错,
首先就是版本问题我用的Mysql 8.0版本,教程上的驱动是5.0版本然后就 错误++;
你用的什么版本的数据库最好就用什么版本的数据驱动;
给个MySql数据驱动8.0版本的连接吧!
https://dev.mysql.com/downloads/file/?id=477058
https://www.mysql.com/products/connector/
数据库的坑解决了,又出现了驱动的坑,首先ssl协议=false;
解决方案:useSSL=false
再来就是:
Caused by: com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. Attempted reconnect 3 times. Giving up.
时区的坑;
解放方案:serverTimezone=GMT%2B8&
话不多说上代码:
package com.fjs;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
public class Study {
public static void main(String[] args) throws Exception{
try {
Connection conn=DriverManager.getConnection("jdbc:mysql://localhost:3306/fjs? serverTimezone=GMT%2B8&&useSSL=false","root", "123456");
String s="select id,name,age from aaa";
PreparedStatement prs=conn.prepareStatement(s);
ResultSet rs=prs.executeQuery();
while(rs.next()) {
System.out.println(rs.getString("id")+"-------"+rs.getString("name")+"-------"+rs.getString("age"));
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
不过最后还是都解决--;网上教程版本过旧了不可全信,得自己一个个去解决大大小小的坑