首先如果没有mysql的需要先下载MySQL,可以看这个教程:
Mysql超详细安装配置教程(保姆级)_mysql安装及配置超详细教程-CSDN博客
官网:MySQL :: Download Connector/J
解压并将驱动jar包导入idea ,
在Java项目中创建一个bin文件夹,然后把jar包Ctrl+C,V到bin文件夹
?
然后lib右键,点击Add as Library
案例代码
package com.bing.lesson01;
import java.sql.*;
/**
* @version: java version 1.8
* @Author: BING
* @description:
* @date: 2023-12-31 10:32
*/
//我的第一个jdbc程序
public class JdbcFirstDemo {
public static void main(String[] args) throws ClassNotFoundException, SQLException {
//1.加载驱动
Class.forName("com.mysql.jdbc.Driver");//固定写法,加载驱动
//2.用户信息和url
String url = "jdbc:mysql://localhost:3306/school?useUnicode=true&charcterEncoding=utf8&useSSL=true";
String username = "root";
String password = "123456";
//3.连接成功,数据库对象
Connection connection = DriverManager.getConnection(url,username,password);
//4.执行SQL
Statement statement = connection.createStatement();
//5.执行SQL的对象去执行SQL,可能存在结果,查看返回结果
String sql = "SELECT * FROM student1";
//6.释放连接
ResultSet resultSet = statement.executeQuery(sql);//返回的结果集,结果集中封装了我们全部查询出来的结果
while (resultSet.next()){
System.out.println("id=" + resultSet.getObject("id"));
System.out.println("name=" + resultSet.getObject("name"));
System.out.println("age1=" + resultSet.getObject("age1"));
System.out.println("birthday=" + resultSet.getObject("birthday"));
System.out.println("======================================");
}
resultSet.close();
statement.close();
connection.close();
}
}
显示运行结果,?成功!
步骤总结:
1.加载驱动
2.连接数据库 DriverManager
3.获得执行sql的对象 Statement
4.获得返回的结果集
5.释放连接
//DriverManager.registerDriver(new com.mysql.jdbc.Driver());
Class.forName("com.mysql.jdbc.Driver");//固定写法,加载驱动
Connection connection = DriverManager.getConnection(url,username,password);
// connection 代表数据库
// 数据库设置自动
// 提交事务
// 事务滚回
connection.rollback();
connection.commit();
connection.setAutoCommit();
String url = "jdbc:mysql://localhost:3306/school?useUnicode=true&charcterEncoding=utf8&useSSL=true";
// mysq1 -- 3306
// 协议 ://主机地址:端口号/数据库名?参数1&参数2&参数3
// oralce -- 1521
//jdbc:oracle:thin:@localhost:1521:sid
Statement 执行SQL的对象 PrepareStatement执行SQL的对象
String sql = "SELECT * FROM student1";
statement.executeQuery(); //查询操作返回 Resultset
statement.execute(); // 执行任何SQL
statement.executeUpdate(); // 更新、插入、删除。都是用这个,返回一个受影响的行数
ResultSet 查询的结果集,结果集中封装了我们全部查询出来的结果。
获取指定的数据类型:
resultSet.getObject(); // 在不知道列类型的情况下使用
// 如果知道列的类型就使用指定的类型
resultSet.getString();
resultSet.getInt();
resultSet.getFloat();
resultSet.getDate() ;
resultSet.getObject();
...
遍历、指针
resultSet.beforeFirst(); // 移动到最前面
resultSet.afterLast();// 移动到最后面
resultSet.next(); //移动到下一个数据
resultSet.previous(); //移动到前一行
resultSet.absolute(row); //移动到指定行
5.释放资源
resultSet.close();
statement.close();
connection.close();//耗资源,用完关掉