步骤1:导入jar包
从官网下载好对应版本的压缩包 下载zip版本
解压打开找到
复制
在ecplise该项目下新建文件夹,命名为lib,粘贴到该文件夹下
选中 右键Build Path-Add to Path即可
成功图
步骤2:初始化驱动
Class.forName("com.mysql.cj.jdbc.Driver");
完整代码 可测试
public class Test {
public static void main(String[] args) {
try {
//如果忘记了第一个步骤的导包,就会抛出ClassNotFoundException
Class.forName("com.mysql.cj.jdbc.Driver");
System.out.println("数据库驱动加载成功");
}catch(ClassNotFoundException e) {
e.printStackTrace();
}
}
}
步骤3:建立与数据库的连接
//建立与数据库的连接
//建立与数据库的连接
Connection c = DriverManager.getConnection("jdbc:mysql://localhost:3306/study?serverTimezone=GMT%2B8", "root", "IKUN1220");
//其中?serverTimezone=GMT%2B8是防止出现时区报错
//study是我的数据库名称
// 账号 root
// 密码 IKUN1220
//账号密码用自己当初为mysql设置的
如何新建数据库 这里以在navicat为例
在任何一个已有的数据库名称上右键-新建数据库,自己输入名字
点击查询后再点击新建查询
将一下sql语句粘贴并运行 可出现与我代码中一样的数据库,这样sql语句就不用改了,不过名称是自己命名的,更改一下即可
CREATE TABLE hero (
id int(11) AUTO_INCREMENT,
name varchar(30) ,
hp float ,
damage int(11) ,
PRIMARY KEY (id)
) DEFAULT CHARSET=utf8;
运行后刷新即可
在粘贴一行并运行刷新,可往表里插入数据
insert into hero values (null, '盖伦', 616, 100)
这里先不贴可运行出来的代码,我会在文章的最后贴出完整代码
步骤4:创建Statement
//3.创建Statement语句
//Statement是用于执行SQL语句的,比如增加,删除
Statement s = c.createStatement();
步骤5:执行sql语句
String sql = "insert into hero values(null,'坤',1000,666)";
s.execute(sql);
步骤6:关闭连接
if(s != null) {
try {
s.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(c != null) {
try {
c.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
完整代码
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class Test {
public static void main(String[] args) {
Connection c = null;
Statement s = null;
try {
//1.加载驱动
Class.forName("com.mysql.cj.jdbc.Driver");
//2.建立与数据库的连接
c = DriverManager.getConnection("jdbc:mysql://localhost:3306/study?serverTimezone=GMT%2B8", "root", "IKUN1220");
//3.创建Statement语句
s = c.createStatement();
//4.执行sql语句
//s.execute执行sql语句
String sql = "insert into hero values(null,'坤',1000,666)";
s.execute(sql);
}catch(ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}finally {
//先关闭s
if(s != null) {
try {
s.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
if(c != null) {
try {
c.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
}
***如果觉得上面关闭连接的方式很麻烦,可使用try-with-resource
方式自动关闭连接
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;
public class Test {
public static void main(String[] args) {
try {
Class.forName("com.mysql.cj.jdbc.Driver");
}catch (ClassNotFoundException e) {
e.printStackTrace();
}
try(
Connection c = DriverManager.getConnection("jdbc:mysql://localhost:3306/study?serverTimezone=GMT%2B8", "root", "IKUN1220");
Statement s = c.createStatement();
){
String sql = "insert into hero values(null,'xiaokui',101,666)";
s.execute(sql);
}catch(SQLException e) {
e.printStackTrace();
}
}
}
本文地址:https://blog.csdn.net/weixin_45732235/article/details/110822123