初识JDBC

1、JDBC是什么?

Java DataBase Connectivity(Java语言连接数据库)

2、JDBC的本质是什么?

JDBC是SUN公司制定的一套接口(interface)

java.sql.*;(这个包下有很多接口)

接口都有调用者和实现者。

面向接口调用、面向接口写实现类,这都属于面向接口编程。

为什么要面向接口编程?

解耦合:降低程序的耦合度,提高程序的扩展力。

多态机制就是非常典型的:面向抽象编程。(不要面向具体编程)

建议:

 Animal a = new Cat();
  ​
  Animal a = new Dog() 
  ​
  //喂养的方法
  ​
  public void feed(ANimal a){//面向父类型编程
  ​
  } 
 
 不建议:
  
  Dog d = new Dog();
  ​
  Cat c = new Cat();

3、Sun公司制定一套JDBC接口?

因为每一个数据库的底层实现原理都不一样。

ORacle数据库有自己的原理

MYSQL数据库有自己的原理

MS SqlServer数据库有自己的原理。

.....

每一个数据库产品都有自己独特的实现原理。

4、驱动?

所有的数据库驱动都是以Jar的形式存在,jar包当中有很多的。class文件,这些文件就是对JDBC接口的实现。

驱动不是SUN公司提供的,是各大数据库厂家提供的,下载驱动需要去数据库官网下载。

JDBC 的本质就是一套接口

JDBC的准备工作,下载相对应的驱动jar包,然后将其配置到环境变量classpath当中。

classpath=.;(点分号英文代表当前路径)后面跟的是jar包所在的文件位置。但是此配置针对的是文本编辑器,针对idea有其单独的配置方式

5、JDBC编程六步

第一步:注册驱动(作用:告诉java程序链接的是哪一个数据库)

第二步:获取连接(表示JVM的进程和数据库进程之间的通道已经打开)

第三步:获取数据库操作对象(专门执行SQL语句的对象)

第四步:执行SQL语句(DML、DQL...)

第五步:处理查询结果集(仅当第四部执行的是select语句时才会处理查询结果集)

第六步:释放资源(使用完资源之后一定要关闭资源,java和数据库属于进程之间的通信,开启之后一定要关闭。)

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

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

相关文章

C++例题:大数运算---字符串相加(使用数字字符串来模拟竖式计算)

1.代码速览 class Solution2 { public:string addStrings(string num1, string num2){//end1和end1是下标int end1 num1.size() - 1;int end2 num2.size() - 1;string str;//下标(指针)从后向前走,走到头才可以结束,所以是end>0int next 0;while (end1 > 0 || end2 &…

C#连接S7-200 smart通讯测试

honeytree 一、编程环境 VS2022软件,选择windows窗体应用(.NET FrameWork):​博途TIA/WINCC社区VX群 ​博途TIA/WINCC社区VX群 添加NuGet程序包;S7netplus 二、引用http://S7.net 三、建立PLC链接 S7-200smart和…

嵌入式5-6QT

1> 思维导图 2> 自由发挥应用场景,实现登录界面。 要求:尽量每行代码都有注释。 #include "mywidget.h"MyWidget::MyWidget(QWidget *parent): QWidget(parent) {//设置标题this->setWindowTitle("MYQQ");//设置图标this…

03_Redis

文章目录 Redis介绍安装及使用redis的核心配置数据结构常用命令stringlistsethashzset(sortedset) 内存淘汰策略Redis的Java客户端JedisRedisson Redis 介绍 Redis是一个NoSQL数据库。 NoSQL: not only SQL。表示非关系型数据库(不支持SQL标准语法)。 …

一个新细节,Go 1.17 将允许切片转换为数组指针!

在 Go 语言中,一个切片(slice)包含了对其支持数组的引用,无论这个数组是作为一个独立的变量存在于某个地方,还是仅仅是一个为支持分片而分配的匿名数组。 其切片基本结构都如下: // runtime/slice.go typ…

Sentinel流量防卫兵

1、分布式服务遇到的问题 服务可用性问题 服务可用性场景 服务雪崩效应 因服务提供者的不可用导致服务调用者的不可用,并将不可用逐渐放大的过程,就叫服务雪崩效应导致服务不可用的原因: 在服务提供者不可用的时候,会出现大量重试的情况&…

鸿蒙内核源码分析(原子操作篇) | 谁在为原子操作保驾护航

基本概念 在支持多任务的操作系统中,修改一块内存区域的数据需要“读取-修改-写入”三个步骤。然而同一内存区域的数据可能同时被多个任务访问,如果在修改数据的过程中被其他任务打断,就会造成该操作的执行结果无法预知。 使用开关中断的方…

CTF(Web)中关于执行读取文件命令的相关知识与绕过技巧

在我遇到的题目中,想要读取文件必然是要执行cat /flag这个命令,但是题目当然不会这么轻松。让你直接cat出来,必然会有各种各样的滤过条件,你要做的就是尝试各种方法在cat /flag的基础上进行各种操作构建出最终的payload。 下面我…

38-1 防火墙了解

一、防火墙的概念: 防火墙(Firewall),也称防护墙,是由Check Point创立者Gil Shwed于1993年发明并引入国际互联网(US5606668 [A]1993-12-15)。它是一种位于内部网络与外部网络之间的网络安全系统,是一项信息安全的防护系统,依照特定的规则,允许或是限制传输的数据通过。…

《QT实用小工具·五十八》模仿VSCode的可任意拖拽的Tab标签组

1、概述 源码放在文章末尾 该项目实现了模仿VSCode的可任意拖拽的Tab标签组,包含如下功能: 拖拽标签页至新窗口 拖拽标签页合并控件 无限嵌套的横纵分割布局(类似Qt Creator的编辑框) 获取当前使用的标签组、标签页 自动向上合并…

【CTF Reverse】XCTF GFSJ0490 simple-unpack Writeup(UPX壳+脱壳+反汇编)

simple-unpack 菜鸡拿到了一个被加壳的二进制文件 解法 拉进 exeinfope。 检测到是 UPX 打包的 ELF 文件。 NOT Win EXE - .o - ELF [ 64bit obj. Exe file - CPU : AMD x86-64 - OS/ABI: Linux/GNU ]Detected UPX! packer - http://upx.github.io -> try unpack with &…

Linux第三节--常见的指令介绍集合(持续更新中)

点赞关注不迷路!,本节涉及初识Linux第三节,主要为常见的几条指令介绍。 如果文章对你有帮助的话 欢迎 评论💬 点赞👍🏻 收藏 ✨ 加关注👀 期待与你共同进步! Linux下基本指令 1. man指令 Linu…

在uniapp里面使用 mp-html 并且开启 latex 功能

在uniapp里面使用 mp-html 并且开启 latex 功能 默认情况下 mp-html 是不会开启 latex 功能的, 如果需要开启 latex 功能是需要到代码操作拉取代码自行打包的。 这里说一下 mp-html 里面的 latex 功能是由 https://github.com/rojer95/katex-mini 提供的技术实现,…

科技园3d数据可视化展示

我们的园区安防3D可视化报警平台通过高精度三维建模技术,将管理对象场景以立体、直观的方式呈现,实现管理对象的全面可视化。同时,平台与各类业务系统深度对接,实现数据、告警、远程操作的整合展示和联动响应,构建中心…

Java基础教程 - 4 流程控制

更好的阅读体验:点这里 ( www.doubibiji.com ) 更好的阅读体验:点这里 ( www.doubibiji.com ) 更好的阅读体验:点这里 ( www.doubibiji.com ) 4 流程控制 4.1 分支结构…

CSS Web服务器、2D、动画和3D转换

Web服务器 我们自己写的网站只能自己访问浏览,但是如果想让其他人也浏览,可以将它放到服务器上。 什么是Web服务器 服务器(我们也会称之为主机)是提供计算服务的设备,它也是一台计算机。在网络环境下,根据服务器提供的服务类型不…

C++构造函数和析构函数的调用顺序

一般情况下,调用析构函数的次序正好与调用构造函数的次序相反,也就是最先被调用的构造函数,其对应的析构函数最后被调用,而最后被调用的构造函数,其对应的析构函数最先被调用。 当然对象的构造函数和析构函数调用时机和…

DRF的序列化【2】

【0】前提概要 【1】基于 View JsonResponse 编写的 5 个接口: 序列化自定义处理: 你需要自己编写序列化逻辑。处理 JSON 格式的 POST 请求数据: 从 request.body 中获取数据,并使用 json.loads() 解析成字典,然后创建相应的对象。request.…

JS基础:变量的详解

你好,我是云桃桃。 一个希望帮助更多朋友快速入门 WEB 前端的程序媛。 云桃桃,大专生,一枚程序媛,感谢关注。回复 “前端基础题”,可免费获得前端基础 100 题汇总,回复 “前端基础路线”,可获取…

基于51单片机NEC协议红外遥控发送接收proteus仿真设计

1.主要功能: 设计一个51单片机红外遥控发射接收proteus仿真设计 功能要求: 1、使用单片机模拟红外遥控器发射红外编码; 2、利用从机接收红外编码,并将编码以16进制显示到数码管上。 需注意仿真中51单片机芯片是兼容的&#x…