JavaWeb笔记13-JDBC原理及使用Statement访问数据库

本文介绍了Java Database Connectivity (JDBC)的基本概念,包括其如何使Java应用程序能够与各种关系型数据库进行交互,以及通过示例代码展示了JDBC访问数据库的具体步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

JDBC
Java DataBase Connectivity
将java代码和数据库进行连接
可以为多种关系型数据库DBMS提供统一的访问方式,目的就是用java来操作数据库
java -> JDBC DriverManager(统一管理器) -> 驱动 -> 数据库
不同的数据库需要不同的驱动来操作,JDBC DriverManager可以通过统一操作不同的驱动来操作不同的数据库。
接口、方法、类:API
jdbc通过API来操作驱动

JDBC DriverManager
管理不同的数据库驱动

数据库驱动(jar包)
驱动是由数据库相应厂商提供的(第三方公司提供)
作用:连接/直接操作数据库

JDBC API
提供各种操作访问接口(增删改查)
Connection
Statement
PreparedStatement
ResultSet

主要功能:
1、与数据库建立链接
2、对数据库发送SQL(增删改查)语句
3、返回数据库的处理结果

具体是通过以下方法实现
DriverMan:管理JDBC驱动
Connection:连接
Statement(PreparedStatement):增删改查
CallableStatement:调用数据库中的存储过程/存储函数
Result:返回的结果集

JDBC访问数据库的具体步骤
1、导入驱动,加载具体的驱动类
2、与数据库建立链接
3、发送sql,执行
4、(查询)处理结果集

数据库驱动
最常见的关系型数据库及对应驱动jar:
Oracle ——ojdbc-x.jar
MySQL——mysql-connector-java-x.jar
SqlServer——sqljdbc-x.jar

数据库对应的具体驱动类:
Oracle——oracle.jdbc.OracleDriver
MySQL——com.mysql.jdbc.Driver
SqlServer——com.microsoft.sqlserver.jdbc.SQLServerDriver

创建数据库连接需要三个要素;
数据库名&IP地址端口号:连接字符串
用户名
密码

各数据库对应的连接字符串
Oracle:
jdbc:oracle:thin:@localhost:1521:ORCL
MySQL:
jdbc:mysql://localhost:3306/数据库实例名
SqlServer:
jdbc:microsoft:sqlserver:localhost:1433;databasename=数据库实例名

获取连接对象通过DriverManager

示例代码:

public class Test {
	// 数据库连接字符串
	private static final String URL = "jdbc:mysql://127.0.0.1:3306/af_school?useUnicode=true&characterEncoding=UTF-8";
	private static final String USERNAME = "root";
	private static final String PASSWORD = "123456";

	public static void update() {
		Connection connection = null;
		Statement stmt = null;
		try {
			// a、导入驱动,加载具体的驱动类
			Class.forName("com.mysql.jdbc.Driver");
			// b、与数据库建立连接
			connection = DriverManager.getConnection(URL, USERNAME, PASSWORD);
			// c、发送sql,执行(增删改、查)
			stmt = connection.createStatement();
			String sql = "INSERT INTO student(`id`,`name`,`birthday`)" + "VALUES('20200023','BinBin','2001-09-09')";

			// 返回值表示增删改几条数据
			int count = stmt.executeUpdate(sql); // 执行sql语句
			// d、处理结果
			if (count > 0) {
				System.out.println("操作成功!");
			}
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		}catch (SQLException e) {
			e.printStackTrace();
		}catch (Exception e) {
			e.printStackTrace();
		}
		
		finally {
			// 关闭数据库连接
			try {
				// 对象.方法,如果对象为空,会报空指针
				stmt.close();
				connection.close();
			} catch (SQLException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
	}
	
	public static void main(String args[]) {
		update();
	}
Day1–JDBC概述+JDBC完成CRUD+DAO设计 1.JDBC概述 1.1 什么是持久化(persistence): 持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用。 ​ 保存数据: ​ 内存中: 掉电之后,数据就没了. ​ 磁盘中: 掉电之后,数据依然存在. 大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以”固化”,而持久化的实现过程大多通过各种关系数据库来完成。 持久化的主要应用是将内存中的数据存储在 关系型数据库中,当然也可以存储在磁盘文件、XML数据文件中。 JPA:JavaEE的规范,Java persistence api: Java的持久化API. Hibernate实现了该规范.(xml/注解) -------------------------------------------------------------------------------------------------------------------- 在Java中,数据库存取技术 只能通过JDBC 访问数据库: JDBC访问数据库的形式主要有两种: ​ 1).直接使用JDBC的API去访问数据库服务器(MySQL/Oracle). ​ 2).间接地使用JDBC的API去访问数据库服务器. ​ 第三方O/R Mapping工具,如Hibernate, MyBatis等.(底层依然是JDBC) ​ JDBC是java访问数据库的基石,其他技术都是对jdbc的封装. 1.2 JDBC(Java DataBase Connectivity): 是一种用于执行SQL语句的Java API(接口,类,方法),可以为多种关系数据库提供统一访问, 它由一组用Java语言编写的类和接口组成。 JDBC提供了一种基准,据此可以构建更高级的工具和接口,使数据库开发人员能够编写数据库应用程序. ​ JDBC访问不同的数据库提供了一种统一的途径,为开发者屏蔽了一些细节问题。 JDBC的目标是使Java程序员使用JDBC可以连接任何提供了JDBC驱动程序的数据库系统, 这样就使得程序员无需对特定的数据库系统的特点有过多的了解,从而大大简化和加快了开发过程。 ​ 总结: JDBC本身是java连接数据库的一个标准,是进行数据库连接的抽象层,由java编写的一组类和接口组成,接口的实现由各个数据库厂商来完成. --------------------- 作者:故事我忘了i 来源:优快云
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值