Jdbc概述和基本使用

一、什么是JDBC呢?

目前市面上存在很多的数据库,比如Oracle、Mysql、SqlServer等…每一种数据库都有着自己的独特的实现原理。
那么我们在使用java链接这些数据库的时候就会出现一个问题,我们需要为每一种数据库开发一套专属于该数据库的链接程序。这显然会大大提升我们的工作量。
为了解决这个问题,于是sun公司制定了一套属于接口标准。java程序员只需要面向这套接口编程即可,不同的数据库厂商,需要针对这套接口,提供不同实现,不同的实现集合,即为不同的数据库驱动。而这套接口标准就是我们常说的JDBC。
JDBC接口包括两个层次

  • 面向应用的API: java API,抽象接口,供应用程序开发人员使用(连接数据库,执行sql语句,过得结果)。
  • 面向数据库的API: java Driver API,供开发商开发数据库驱动程序。
    在这里插入图片描述

二、程序员调用JDBC程序编写步骤

(1).JBDC常见的接口和类

在这里插入图片描述

(2).JBDC代码的执行图

在这里插入图片描述

补充:ODBC(开放式数据库连接),是微软在Windows平台下推出的,使用者在程序当中只需要调用ODBC API,由ODBC驱动程序将调用转换为对特定数据库的调用请求

三、利用jdbc实现对数据库数据量的检查

public class JdbcUtil {
	
	public static void main(String[] args) {
		int count = count();
		System.out.println(count);
	}
	
	public static int count() {
		// 定义数据量
		int temp =0;
		try {
			
			Class.forName("com.mysql.jdbc.Driver"); // 1.加载驱动
			//2.建立连接
			Connection connection = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/wuye?useUnicode=true&characterEncoding=utf-8", "root", "2020");
			//3.创建执行的SQL语句
			String sqlString = "select * from student";  //要想执行sql语句,必须获得Statement实例
			Statement statement = (Statement) connection.createStatement();
			//4.执行sql语句
			ResultSet re = (ResultSet) statement.executeQuery(sqlString);
			//5.处理结果
			while (re.next()) {
				temp +=1;
			}
			
			//6.释放资源
			if(re!=null) {
				re.close();
			}
			if(statement !=null) {
				statement.close();
			}
			if (connection !=null) {
				connection.close();
			}
			
		} catch (Exception e) {
			// TODO Auto-generated catch block
			System.out.println("找不到驱动类,加载失败");
			e.printStackTrace();
		} 
		
		return temp;
	}
	
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/398147.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

通俗易懂地解释OpenAI Sora视频生成的特点有哪些?与Runway Gen2、Pika有什么区别?缺点是什么?

OpenAI的Sora模型是最近两天最火热的模型。它生成的视频无论是清晰度、连贯性和时间上都有非常好的结果。在Sora之前,业界已经有了很多视频生成工具和平台。但为什么Sora可以引起如此大的关注?Sora生成的视频与此前其它平台生成的视频到底有哪些区别&…

自媒体达人都在用的写作工具:6款ai写作实用工具推荐! #科技#学习方法#AI写作

这些宝藏AI 写作神器,我不允许你还不知道~国内外免费付费都有,还有AI写作小程序分享,大幅度提高写文章、写报告的效率,快来一起试试吧! 1.元芳写作 这是一个微信公众号 面向专业写作领域的ai写作工具,写作…

IDEA插件推荐:免费好用!

IDEA是一款功能强大的集成开发环境(IDE),它可以帮助开发人员更加高效地编写、调试和部署软件应用程序。我们在编写完接口代码后需要进行接口调试等操作,一般需要打开额外的调试工具。 今天给大家介绍一款IDEA插件:Api…

C#泛型及其应用:获取并显示员工信信息

目录 一、关于泛型 1.泛型定义 2.泛型与非泛型的区别 3.泛型的应用 (1)泛型类: (2)泛型方法: (3)泛型委托: (4)泛型接口: &a…

智慧公厕:让智慧城市的公共厕所焕发“智慧活力”

智慧城市的建设已经进入了一个新的阶段,不仅仅是智慧交通、智慧环保,如今甚至连公厕都开始迎来智慧化时代。智慧公厕作为智慧城市的神经末梢,正在通过信息化、数字化和智慧化的方式,实现全方位的精细化管理。本文以智慧公厕源头专…

代码随想录刷题笔记-Day21

1. 二叉搜索树中的插入操作 701. 二叉搜索树中的插入操作https://leetcode.cn/problems/insert-into-a-binary-search-tree/给定二叉搜索树(BST)的根节点 root 和要插入树中的值 value ,将值插入二叉搜索树。 返回插入后二叉搜索树的根节点。…

我为什么不喜欢关电脑?

程序员为什么不喜欢关电脑? 你是否注意到,程序员们似乎从不关电脑?别以为他们是电脑上瘾,实则是有他们自己的原因!让我们一起揭秘背后的原因,看看程序员们真正的“英雄”本色! 一、上大学时。 …

Vue3引用第三方模块报错Could not find a declaration file for module ***.

在引用第三方的组件时候报错如下 原因是:该组件可能不是.ts文件而是.js文件 解决方案: 1.在Src的目录下面新建一个文件为shims-vue.d.ts的文件 2.文件内容为 declare module xxx,xxx就是你报错的模块 例如我这样 declare module vue3-pu…

代码随想录day26--贪心基础

什么是贪心 贪心的本质是选择每一阶段的局部最优,从而达到全局最优 举个例子: 有一堆钞票,可以拿走十张,如果想要达到最大的金额,应该怎么拿? 指定每次拿最大的,最终结果就是拿走最大数额的…

TypeScript(一):TypeScript基本理解

TypeScript基本理解 为什么使用TS JavaScript发展至今,没有进行数据类型的验证而我们知道,在编程阶段,错误发现的越早越好而TS就解决了JS的这个问题 认识TypeScript TypeScript是拥有类型的JavaScript超级,它可以编译成普通、…

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之LoadingProgress组件

鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之LoadingProgress组件 一、操作环境 操作系统: Windows 10 专业版、IDE:DevEco Studio 3.1、SDK:HarmonyOS 3.1 二、LoadingProgress组件 用于显示加载动效的组件。 子组件 无 接口 L…

Docker详解及使用

文章目录 为什么要用docker为什么会出现容器Docker 是什么容器是什么虚拟化是什么Docker 和 虚拟化的区别Docker 容器有几种在状态什么是仓库什么是镜像什么是容器仓库、镜像、容器的关系常用的 Docker 命令如何把主机的东西拷贝到容器内部如何让容器随着 Docker 服务启动而自动…

双缸黑白箭来袭,3月5日亮相,胡斯瓦纳发布全新车系。

根据国外最新消息,Husqvarna准备在下个月就是3月5日发布全新车系,前段时间刚曝光的新款的401,这突然就来了双缸版本的黑白箭了,之前的401/701全部都是单缸,这也是首台胡斯瓦纳黑白箭的双缸车型。 外观方面仍然采用现代…

自学嵌入式困难吗?

自学嵌入式困难吗? 在开始前我有一些资料,是我根据网友给的问题精心整理了一份「嵌入式的资料从专业入门到高级教程」, 点个关注在评论区回复“888”之后私信回复“888”,全部无偿共享给大家!!&#xff01…

阿里云服务器租用价格,2024年新版活动报价明细表

2024年阿里云服务器租用价格表更新,云服务器ECS经济型e实例2核2G、3M固定带宽99元一年、ECS u1实例2核4G、5M固定带宽、80G ESSD Entry盘优惠价格199元一年,轻量应用服务器2核2G3M带宽轻量服务器一年61元、2核4G4M带宽轻量服务器一年165元12个月、2核4G服…

产品经理学习-产品运营《社群搭建》

什么是社群 有主题:成员有共同的需求,目标或价值观有组织:有文档的群体结构,是有一群人协作而成的有规则:有门槛和规则玩法 社交、社区、社群的区别 社交: 多数的社交是单点对单点的社交以沉淀关系为目的…

代码随想录算法训练营DAY21 | 二叉树 (9)

一、LeetCode 669 修建二叉搜索树 题目链接:669.修建二叉搜索树https://leetcode.cn/problems/trim-a-binary-search-tree/description/ 思路:递归三部曲-定参数、返回值-定终止条件-定单层递归逻辑 class Solution {public TreeNode trimBST(TreeNode …

沁恒CH32V30X学习笔记09---使用TIM 外部时钟1模式实现硬件计数

TIM 外部时钟1使用 定时器时钟 通过框图可知;外部时钟1模式下仅仅只有通道1 和通道2 可以输入脉冲 简单示例教程 void TIM1_ETRClockMode1_Init(void) {RCC_APB2PeriphClockCmd(RCC_APB2Periph_TIM1, ENABLE);TIM_CounterModeConfig(TIM1, TIM_CounterMode_Up)

SwiftUI 更自然地向自定义视图传递参数的“另类”方式

概览 在 SwiftUI 中,正是自定义视图让我们的 App 变得与众不同!然而,除了传统的视图接口定义方式以外,我们其实还可以有更“银杏化”的选择。 如上图所示:对于 SubView 子视图所需的参数我们一开始并没有操之过急&…

MySQL的备份与恢复案例

新建数据库 数据库备份,数据库为school,素材如下1.创建student和score表CREATE TABLE student ( id INT(10) NOT NULL UNIQUE PRIMARY KEY , name VARCHAR(20) NOT NULL , sex VARCHAR(4) , birth YEAR, department VARCHAR(20) , address…