Java的JDBC编程

Java 的 JDBC(Java Database Connectivity) 是一个用于连接和操作数据库的 API,JDBC屏蔽了不同数据库原生API之间的差异,使用同一套API接口来规范所有数据库的编程操作;

JDBC编程的基本步骤:

1.先能够安装 对应数据库的 驱动包。

MySQL第三方软件提供的驱动包(数据库厂商提供的具体实现)

中央仓库https://mvnrepository.com/

2.将jar包导入到项目中

1)在项目中创建目录,把.jar拷贝进来

2)右键这个lib目录(目录名字可以随便写)

然后点击ok即可,此时idea就可以解析出jar包里面的包含的内容

3.编写数据库代码

java 复制代码
// 1.创建数据源,描述了数据库服务器在哪
DataSource dataSource = new MysqlDataSource();

// 设置数据库所在的位置,当前是固定的写法
((MysqlDataSource)dataSource).setUrl("jdbc:jdbc:mysql://127.0.0.1:3306/test1?characterEncoding=utf8&useSSL=false");

	// url:唯一资源地址符,描述了互联网上的唯一的一个资源的位置
	// jdbc:mysql 这个url是给jdbc中的mysql来使用的
	// 127.0.0.1 数据库服务器所在的IP地址(本机地址)
	// 3306 使用IP地址是确定了主机,一个主机上跑着很多个程序,使用端口号来区分不同的程序
	// test1  访问的数据库名
	// characterEncoding=utf8  描述了请求的字符串编码方式,一般设成utf8
	// useSSL  关闭加密功能

//  设置用户名 和密码
((MysqlDataSource)dataSource).setUser("root");
((MysqlDataSource)dataSource).setPassword("");


// 2.和数据库建立连接(写jdbc代码本质上是实现一个MySQL客户端,要通过网络和服务器进行通信)
Connection connection = dataSource.getConnection();

// 3.构造一个SQL语句,来完成插入操作
String sql = "insert into student values(?,?)";
// jdbc中还需要搭配一个特定的对象,来描述这里的sql的情况
PreparedStatement statement = connection.prepareStatement(sql);

// 4.执行SQL语句  针对增,删,改,查使用executeUpdate来执行
//               针对 查,使用executeQuery来执行
// 执行就是给服务器发送网络请求了
// 返回结果的含义是,这个操作,影响到几行

int ret = statement.executeUpdate();
System.out.println("ret = " + ret);

// 5.断开和数据库的连接,并且释放必要的资源。
// 连接,本质上就是找个地方,记录一下"我和谁建立连接了"
// 当连接不再使用的时候,就需要释放连接,把之前的记录给"察除掉"
statement.close();
connection.close();
相关推荐
SteveCode9 分钟前
血赚不亏!Java 17 9 个炸裂特性,程序员看完直呼:太香了!
java
共享家952711 分钟前
QT-系统(多线程)
开发语言·数据库·qt
BLOB_10100123 分钟前
关于懒人复制idea项目的坑
java·ide·intellij-idea
Moe48826 分钟前
Spring Boot 自动配置核心:AutoConfigurationImportSelector 深度解析
java·后端·设计模式
郝学胜-神的一滴39 分钟前
Effective Python 第52条:用subprocess模块优雅管理子进程
linux·服务器·开发语言·python
valan liya1 小时前
C++list
开发语言·数据结构·c++·list
6***x5451 小时前
Java设计模式之策略模式
java·设计模式·策略模式
Le1Yu1 小时前
订单取消功能(退款功能、策略模式、定时任务)
开发语言
章鱼哥7301 小时前
Java 策略模式 + 聚合对象:实现多模块的统计与聚合,快速扩展的实战
java·开发语言·策略模式
是店小二呀1 小时前
openGauss进阶:使用DBeaver可视化管理与实战
开发语言·人工智能·yolo