【MySQL】Java实现JDBC编程

文章目录

    • [1. JDBC](#1. JDBC)
    • [2. 添加驱动包](#2. 添加驱动包)
    • [3. 编程](#3. 编程)
      • [3.1 创建数据源](#3.1 创建数据源)
      • [3.2 与数据库建立连接](#3.2 与数据库建立连接)
      • [3.3 构造SQL语句](#3.3 构造SQL语句)
      • [3.4 执行SQL语句](#3.4 执行SQL语句)
      • [3.5 释放资源,关闭连接](#3.5 释放资源,关闭连接)

1. JDBC

数据库编程必须掌握至少一门编程语言,一种数据库,会导入数据库驱动包。

操作和连接不同数据库都需要一种连接的软件组件,即数据库驱动包。数据库驱动包中包含了与特定数据库相对应的API,使得应用程序可以与数据库进行通信。而不同的数据库提供的API都不相同,从而造成很麻烦,这个时候JDBC就应运而生了,让Java连接数据库变得简单。
JDBC ,即Java Database Connectivity,Java数据库连接。它是一个标准的Java API,用于将Java程序与数据库连接。JDBC提供了一组用于编写可以访问关系型数据库(如MySQL、Oracle和Microsoft SQL Server)的应用程序的接口和类。

我这里使用的Java连接操作MySQL。

2. 添加驱动包

我们可以在中央仓库中找到我们所需驱动包API。(当然也可以在Oracle,GitHub中下载)
Maven存储库

  1. 在搜索栏直接搜索MySQL
  2. 找到我们需要的MySQL,Java
  3. 点开,选择我们需要的版本(我这里选择5.1.49)
  4. 下载完成,一个 .jar压缩文件
  5. 将. jar文件导入项目中,创建一个目录,直接复制就行
  6. 右键这个包,点击Add as Library...,使idea知道导入了这个

    点击ok,就完成了添加驱动包。

3. 编程

编程看着麻烦,其实就是固定模板,多使用几次便会掌握了。

3.1 创建数据源

java 复制代码
 		//创建"数据源"
 		//向上转型,DataSource是JDBC提供的interface,MysqlDataSource是MySQL驱动包提供的interface
        DataSource dataSource = new MysqlDataSource();
        //setUrl,setUser,setPassword三个方法都是子类的方法,我们可以强转一下,也可以直接使用,但当代码十分复杂的时候,有可能造成代码耦合。
        //方法里面的东西格式是固定的,IP是你电脑的IP,xiaoc是你要关联的数据库名字,替换成你要操作的数据库名字。
        ((MysqlDataSource) dataSource).setUrl("jdbc:mysql://127.0.0.1:3306/xiaoc?characterEncoding=utf8&useSSI=false");
        //这一步是提供用户名,一般都是root
        ((MysqlDataSource) dataSource).setUser("root");
        //提供你的密码
        ((MysqlDataSource) dataSource).setPassword("131452");

3.2 与数据库建立连接

java 复制代码
        //和数据库建立连接
        //一个Java程序,用于来连接数据库服务器
        Connection connection = dataSource.getConnection(


注意:
选择Connection时,一定要选择java.sql,上面那个时不可以的

3.3 构造SQL语句

java 复制代码
		// 构造 SQL 语句
		//本身SQL语句时String类型,但JDBC提供了Statement对象,让我们转换一下再发送。Statement直接发送语句不做任何检查,我们也可以使用PreparedStatement在客服端进行初步的检查,降低服务器的负担。
        String sql = "insert into student values(111,小辰)";
        PreparedStatement statement = connection.prepareStatement(sql);

3.4 执行SQL语句

java 复制代码
        // 执行 SQL 语句---返回值影响几行
        int n = statement.executeUpdate();
        System.out.println("n = " + n);

executeQuery,executeUpdate都是Statement中的方法,前者用于查询,后者用于增加,删除

,修改,返回类型是一个整型。

3.5 释放资源,关闭连接

java 复制代码
        //释放资源,关闭连接
        //Java虽然有垃圾回收机制,释放内存,但计算机资源不止内存,所以我们还需要手动释放,这个时候我们需注意释放顺序,倒着来,先创建的后关闭。
        statement.close();
        connection.close();

这是插入的程序,其他的操作和这区别不大,大家可以自己探索。

相关推荐
王桑.21 分钟前
IO流高级流--转换流
java
2301_7951672029 分钟前
Python 高手编程系列八:缓存
开发语言·python·缓存
8***293139 分钟前
Go基础之环境搭建
开发语言·后端·golang
qq_124987075343 分钟前
基于SpringBoot技术的企业请假审批管理系统的设计与实现(源码+论文+部署+安装)
java·spring boot·后端·信息可视化·毕业设计
Yue丶越1 小时前
【C语言】自定义类型:联合体与枚举
c语言·开发语言
BBB努力学习程序设计1 小时前
Java方法详解:提升代码复用性与可读性的利器
java
BBB努力学习程序设计1 小时前
Java运算符完全指南:让代码学会“计算”和“判断”
java
csbysj20201 小时前
DOM 节点
开发语言
用户84913717547162 小时前
ThreadLocal 源码深度解析:JDK 设计者的“妥协”与“智慧”
java·后端
用户0304805912632 小时前
# 【Maven避坑】源码去哪了?一文看懂 Maven 工程与打包后的目录映射关系
java·后端