idea实现Java连接MySQL数据库

1.下载MySQL并安装

首先如果没有mysql的需要先下载MySQL,可以看这个教程:

Mysql超详细安装配置教程(保姆级)_mysql安装及配置超详细教程-CSDN博客

2.下载mysql 的jdbc驱动

官网:MySQL :: Download Connector/J

解压并将驱动jar包导入idea ,

在Java项目中创建一个bin文件夹,然后把jar包Ctrl+C,V到bin文件夹

然后lib右键,点击Add as Library

3.编写第一个jdbc程序

案例代码

java 复制代码
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.释放连接

4.JDBC中对象解释

1.DriverManager

java 复制代码
//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();

2.URL

java 复制代码
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

3.Statement

Statement 执行SQL的对象 PrepareStatement执行SQL的对象

java 复制代码
String sql = "SELECT * FROM student1";

statement.executeQuery(); //查询操作返回 Resultset
statement.execute(); // 执行任何SQL
statement.executeUpdate(); // 更新、插入、删除。都是用这个,返回一个受影响的行数

4.ResultSet

ResultSet 查询的结果集,结果集中封装了我们全部查询出来的结果。

获取指定的数据类型:

java 复制代码
resultSet.getObject(); // 在不知道列类型的情况下使用
// 如果知道列的类型就使用指定的类型
resultSet.getString();
resultSet.getInt();
resultSet.getFloat();
resultSet.getDate() ;
resultSet.getObject();
...

遍历、指针

java 复制代码
resultSet.beforeFirst(); // 移动到最前面
resultSet.afterLast();// 移动到最后面
resultSet.next(); //移动到下一个数据
resultSet.previous(); //移动到前一行
resultSet.absolute(row); //移动到指定行

5.释放资源

java 复制代码
resultSet.close();
statement.close();
connection.close();//耗资源,用完关掉
相关推荐
小麟有点小靈几秒前
VSCode写java时常用的快捷键
java·vscode·编辑器
XY.散人11 分钟前
初识Redis · list和hash类型
数据库·redis·哈希算法
Arbori_2621511 分钟前
Oracle WITH 子句(也称为 公共表表达式,Common Table Expression,CTE)
数据库·oracle
程序猿chen12 分钟前
JVM考古现场(十九):量子封神·用鸿蒙编译器重铸天道法则
java·jvm·git·后端·程序人生·java-ee·restful
Tapdata26 分钟前
拒绝停服, 随时回退:Sybase 到 Postgresql 的无缝数据库双向迁移方案
数据库
&白帝&30 分钟前
java HttpServletRequest 和 HttpServletResponse
java·开发语言
moxiaoran575341 分钟前
mysql自动赋值
数据库·mysql
结衣结衣.44 分钟前
【MySQL】数据库基础
数据库·mysql
博界IT精灵1 小时前
SQL语言
数据库·sql
阿杆1 小时前
🤯我写了一套无敌的参数校验组件④ | 现已支持 i18n
java·spring