Java进阶篇——JDBC技术的简单认识与使用

文章目录



前言

本次任务是带领大家认识一下JDBC技术,同时也是作为自己的一个复习内容,在学习该项技术之前希望大家能有一定的MySQL数据库基础与充分JavaSE的知识(我已经将大体所有的JavaSE知识整理好了,过段时间进行再给每一个模块做一个思维导图),OK 万事俱备那就开始干!


提示:以下是本篇文章正文内容,下面案例可供参考

一、JDBC技术是什么?

说起JDBC技术呢,没有太大的难度,我们今天的任务重点是掌握这项技术的基本运行原理(我们以MySQL作为实验对象,别问为啥,问就是“简单”二字),所谓JDBC 技术咱们通俗简单理解成利用java语言来操作数据的一项技术,那么如何操作呢?当然是使用接口呗,由于数据库想要和java语言进行联动,那么MySQL就需要去实现这些接口把接口的实现类打成jar包,作为数据库驱动。

二、实战演练

1.JDBC四大金刚的介绍

在JDBC技术中我们要想实现对数据库的操作,那么我们就必须先了解到JDBC中的四大接口(四大金刚),它们贯穿了整个操作流程,其详细介绍如下:

接口说明
DriverManger数据库驱动,用于注册驱动
Connection与数据库的创建连接对象时使用
Statement操作数据库sql语句对象
ResultSetsql语句执行后返回的结果(用于查询结果时使用

2.JDBC的操作流程(图解)

在这里插入图片描述

3、操作流程详解

3.1下载MySQL数据驱动包(网上下载即可几分钟搞定)

在这里插入图片描述

3.2使用集成开发工具Intelij IDEA创建并打开一个Java项目

在这里插入图片描述
具体流程我就不给大家说明了,相信使用了这么久的工具创建一个项目还是会的吧

3.3创建lib文件存放我们下载好了的驱动jar包

在这里插入图片描述
注意别放错了位置,是在项目根目录下创建的文件lib并存放jar包

3.4将驱动包添加到库中

流程: new–> Project Structure -->Modules–点击 “+”号–>选择JARs or Directories–>根据路径找到 该项目下的lib文件中点击 存放在里面的 驱动jar包
在这里插入图片描述
在这里插入图片描述

3.5创建需要实验的数据库与表(使用工具Navicat)

在这里插入图片描述

3.6代码演示

package com.yzy.jdbcTest;
import org.junit.Test;
import java.math.BigDecimal;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;

public class Test01 {
    @Test
    public void test01() throws Exception{
        //利用JDBC增加数据
        //1、加载驱动(导入驱动包)
        Class.forName("com.mysql.jdbc.Driver");
        //2、获取连接对象
        String url="jdbc:mysql://localhost:3306/java2107?useUnicode=true&characterEncoding=utf-8";
        String username="root";
        String password="123456";
        Connection connection= DriverManager.getConnection(url,username,password);
        //3、创建获取Statement对象(目的:向Mysql发送sql指令)
        Statement statement=connection.createStatement();
        //利用Statement向MySQL发送sql指令
        String sql="INSERT INTO student(name,sex,age,salary,course) VALUES('卿恒','男',20,1200,'市场营销')";
        int num =statement.executeUpdate(sql);
        System.out.println("受影响的行数为:"+num);
        //关闭资源(关闭顺序是创建顺序的倒序)
        statement.close();
        connection.close();


    }
    @Test
    public void test02() throws Exception{
        //利用JDBC删除数据
        //1、加载驱动
        Class.forName("com.mysql.jdbc.Driver");
        //2、利用注册驱动器DriverManager获取连接对象Connection
        String url="jdbc:mysql://localhost:3306/java2107?useUnicode=true&characterEncoding=utf-8";
        String username="root";
        String password="123456";


        Connection connection=DriverManager.getConnection(url,username,password);
        //3、利用Connection连接对象获取Statement的对象
        Statement statement=connection.createStatement();
        //4、创建并执行sql语句
        String sql="DELETE  FROM student where name ='钟佳'";
        int num=statement.executeUpdate(sql);
        System.out.println("执行删除操作成功,受影响的行数为:"+num);
        //5、关闭资源
        statement.close();
        connection.close();


    }
    @Test
    public void test03()throws Exception{
        //利用JDBC修改数据
        //1、加载驱动
        Class.forName("com.mysql.jdbc.Driver");
        //2、创建连接对象
        //"jdbc:mysql://localhost:3306/java2107?useUnicode=true&characterEncoding=utf-8";
        String url="jdbc:mysql://localhost:3306/java2107?userUnicode=true&characterEncoding=utf-8";
        String username="root";
        String password="123456";
        Connection connection=DriverManager.getConnection(url,username,password);
        //3、通过 Connection 对象创建并获取 Statement 对象
        Statement statement=connection.createStatement();
        //4、利用Statement对象执行sql语句
        String sql="UPDATE student SET name ='张云峰' where name ='卿恒'";
        int num=statement.executeUpdate(sql);
        System.out.println("执行成功!受影响的行数为:"+num);
        //5、关闭资源
        statement.close();
        connection.close();


    }
    //重点在次
    @Test
    public void test04()throws Exception{
        //利用JDBC查询数据
        //利用JDBC修改数据
        //1、加载驱动
        Class.forName("com.mysql.jdbc.Driver");
        //2、创建连接对象
        //"jdbc:mysql://localhost:3306/java2107?useUnicode=true&characterEncoding=utf-8";
        String url="jdbc:mysql://localhost:3306/java2107?userUnicode=true&characterEncoding=utf-8";
        String username="root";
        String password="123456";
        Connection connection=DriverManager.getConnection(url,username,password);
        //3、通过 Connection 对象创建并获取 Statement 对象
        Statement statement=connection.createStatement();
        //4、利用Statement对象获取ResultSet的对象结果集并遍历执行sql语句
        String sql="select * from student";
        statement.executeQuery(sql);

        //获取ResultSet结果集
        ResultSet resultSet=statement.getResultSet();

        //遍历结果集
        while (resultSet.next()){//判断是否有可迭代对象的数据行
            //通过对照着数据库的字段名获取对应的数据
            int id=resultSet.getInt("id");
            String name=resultSet.getString("name");
            String sex=resultSet.getString("sex");
            int age=resultSet.getInt("age");
            BigDecimal salary=resultSet.getBigDecimal("salary");
            String course=resultSet.getString("course");

            System.out.println(id+"--"+name+"--"+sex+"--"+age+"--"+salary);

        }
        //关闭资源
        resultSet.close();
        statement.close();
        connection.close();

    }
}

3.7需要注意部分

1、记住 在进行数据库连接操作的时候一些基本操作问题不要搞错了
在这里插入图片描述>数据库的增删改查中 就只有 查 这一个功能比较特殊,需要返回数据,所以需要用到ResultSet,其余的几个功能没什么太大区别,如果数据库没什么问题,那么结果就不会有问题,今天的分享到此结束


总结

本次输入JDBC的入门基础,后期当我们使用Maven的时候将会大大提高我们的开发效率。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sugar-free->小粽子

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值