JDBC技术(java数据库连接技术)

news2024/11/19 22:44:33

引入:USB技术介绍

        USB,是英文Universal Serial Bus(通用串行总线)的缩写,是一个外部总线标准,用于规范与外部设备的连接和通讯

        USB是一个技术统称,有三部分组成

                第一部分:USB的规范和设计标准(概念)

                第二部分:电脑端的USB接口(接口)

                第三部分:外设的USB接口和具体发送信号的驱动程序(实现类) 

正题

一:JDBC技术介绍

        JDBC:Java Database Connectivity(Java连接数据库技术)

        通俗点说,在Java代码中,使用JDBC提供的方法,可以发送字符串类型的SQL语句到数据库管理软件(MySQL、Oracle等),并且获取语句执行结果,进而实现数据库数据CURD的技术

        JDBC概述来说就是Java程序与数据库软件之间连接的桥梁

JDBC规范和接口JDBC第三方数据库厂商
Java语言只提供规范(接口),规定数据库操作方法;标准的类库存在于java.sql,javax.sql包下java连接数据库技术统称各数据库厂商,根据Java的JDBC规范(接口),完成具体的实现驱动代码(jar),实现代码可以不同,但是方法都相同

总结:

        1.JDBC由两部分组成:

                一是Java提供的JDBC规范(接口)

                二是各个数据库厂商的实现驱动jar包(jar包是java程序打成的一种压缩包格式,你可以将这些jar包引入你的项目中,然后你可以使用这个java程序中类和方法以及属性了)

        2.JDBC技术是一种典型的面向接口编程

优势:

        我们只要学习JDBC接口规定方法,即可操作所有数据库软件

        项目中期需要切换数据库,我们只需要更新第三方驱动jar包,不需要更改代码 

二:JDBC使用路线

        具体核心类和接口

                DriverManager

                        1.将第三方数据库厂商的实现驱动jar注册到程序中

                        2.可以根据数据库连接信息获取connection

                Connection

                        1.和数据库建立的连接,在连接对象上,可以多次执行数据库curd操作

                        2.可以获取statement(静态SQL路线,没有动态值语句)和preparestatement(预编译SQL路线,有动态值语句)、callablestatement(执行标准存储过的SQL语句)对象

                Statement、PrepareStatement、CallableStatement

                        1.具体发送SQL语句到数据库管理软件的对象

                        2.不同发送方式稍有不同

                Result

                        1.面向对象思维的产物(抽象成数据库的查询结果表)

                        2.存储DQL查询数据库结果的对象

                        3.需要我们进行解析,获取具体的数据库数据

三:全新JDBC核心API

        3.1:引入mysql-jdbc驱动jar

                1.驱动jar版本选择

                2.java工程导入依赖

                        a.项目创建lib文件夹

                        b.导入驱动依赖jar包

                        c.jar包右键-添加为项目依赖

        3.2:JDBC基本使用步骤分析

                1.注册驱动-将依赖的jar包,进行安装

                2.获取连接-Connection

                3.创建发送SQL语句对象-statement

                4.发送SQL语句,并获取返回结果-ResultSet结果对象

                5.结果集解析

                6.资源关闭-释放

        3.3:基于statement演示查询

                1.准备数据库数据

                2.查询目标

                3.基于statement实现查询

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

深度学习电脑配置

目录 你真的需要这么一块阵列卡 你真的需要这么一块阵列卡 如何从硬件上保证数据安全?以下面这个 阵列卡 为例,它可以给硬盘组建磁盘阵列,其中用的比较多的是 RAID1 和 RAID5 。

【Linux】线程属性的定义如何修改线程属性(附图解与代码实现)

我们知道,在创建线程时,会用到pthread_create()函数 ,我们来简单介绍一下该函数: pthread_create(线程的tid , 线程属性 , 工作函数名 , 函数需要的参数); 这篇博客要讲的线程属性&#xff0c…

卷积和反卷积的一些计算细节记录

一、卷积计算 多通道输入的情况 维度计算公式 参考: https://blog.csdn.net/qq_42596142/article/details/111467409 https://blog.csdn.net/v_july_v/article/details/51812459 https://www.cnblogs.com/wenshinlee/p/12591492.html 二、反卷积计算&#xff…

【音视频|ALSA】ALSA是什么?ALSA框架详细介绍

😁博客主页😁:🚀https://blog.csdn.net/wkd_007🚀 🤑博客内容🤑:🍭嵌入式开发、Linux、C语言、C、数据结构、音视频🍭 🤣本文内容🤣&a…

相似性搜索:第 5 部分--局部敏感哈希 (LSH)

SImilarity 搜索是一个问题,给定一个查询的目标是在所有数据库文档中找到与其最相似的文档。 一、介绍 在数据科学中,相似性搜索经常出现在NLP领域,搜索引擎或推荐系统中,其中需要检索最相关的文档或项目以进行查询。在大量数据中…

Linux常用命令——consoletype命令

在线Linux命令查询工具 consoletype 输出已连接的终端类型 补充说明 consoletype命令用于打印已连接的终端类型到标准输出,并能够检查已连接的终端是当前终端还是虚拟终端。 语法 consoletype实例 [rootlocalhost ~]# consoletype pty在线Linux命令查询工具

云原生场景下高可用架构的最佳实践

作者:刘佳旭(花名:佳旭),阿里云容器服务技术专家 引言 随着云原生技术的快速发展以及在企业 IT 领域的深入应用,云原生场景下的高可用架构,对于企业服务的可用性、稳定性、安全性越发重要。通…

Springboot+vue的人事管理系统(有报告),Javaee项目,springboot vue前后端分离项目。

演示视频: Springbootvue的人事管理系统(有报告),Javaee项目,springboot vue前后端分离项目。 项目介绍: 本文设计了一个基于Springbootvue的前后端分离的人事管理系统,采用M(model…

2023年【四川省安全员B证】报名考试及四川省安全员B证考试内容

题库来源:安全生产模拟考试一点通公众号小程序 四川省安全员B证报名考试根据新四川省安全员B证考试大纲要求,安全生产模拟考试一点通将四川省安全员B证模拟考试试题进行汇编,组成一套四川省安全员B证全真模拟考试试题,学员可通过…

程序装载:“640K内存”真的不够用么?

目录 背景 程序装载面临的挑战 内存分段 内存分页 小结 背景 计算机这个行业的历史上有过很多成功的预言,最著名的自然是“摩尔定律”。当然免不了的也有很多“失败”的预测,其中一个最著名的就是,比尔盖茨在上世纪 80 年代说的“640K …

计网面试复习自用

五层: 应用层:应用层是最高层,负责为用户提供网络服务和应用程序。在应用层,用户应用程序与网络进行交互,发送和接收数据。典型的应用层协议包括HTTP(用于网页浏览)、SMTP(用于电子邮…

操作系统学习笔记5-内存管理

文章目录 1、CPU执行程序的基本过程2、CPU位数、OS位数、内存地址总线数、内存数据总线数目、逻辑地址位数、物理地址位数3、内存管理逻辑图4、编译、链接5、装入操作6、绝对装入7、静态重定位装入8、动态重定位装入9、内存保护10、单一连续分配10、固定分区分配11、动态分区分…

Java并发面试题:(三)sleep和wait方法区别,notify 和 notifyAll方法

sleep和wait wait, notify 和 notifyAll这些方法不在thread类里面? JAVA提供的锁是对象级的而不是线程级的,每个对象都有锁,通过线程获得。如果线程需要等待某些锁那么调用对象中的wait()方法就有意义了。如果wait()方法定义在Thread类中,线…

文件操作合集 - C语言

前言 由于我们每次打开程序写入的数据都是在内存中处理,关闭程序就直接没有了,下次还需要重新进行操作录入数据等,这里我们就可以使用文件来保存数据,更加持久化,下面我们基于c语言来介绍一些文件操作. 文件指针: 文件的打开和关闭 文件在读写之前应该先打开文件,在…

Linux:进程控制

目录 一、进程创建 写时拷贝 二、进程终止 echo $? 如何终止进程 _exit与exit 三、进程等待 进程等待的必要性 进程等待的操作 wait waitpid status 异常退出情况 status相关宏 options 四、进程程序替换 1、关于进程程序替换 2、如何进行进程程序替换 程序…

记录一次典型oom的处理过程

背景 有同学反馈收到应用RT的报警,其中的流量都来自于网关集群中的一台机器。因为负责网关,就上去看了下并进行排查。整体是一个比较明显的oom,这里只是记录下排查过程,老司机可以略过了。 初步现象 常规步骤,使用t…

maven 新建模块 导入后 按Ctrl 点不进新建模块pom定义

新建的ruoyi-common-mybatisplus 模块,导入一直不正常 画出的模块一直导入不进来 这是提示信息 这是正常的提示信息 加上 <version>3.6.3</version> 后,才一切正常

Bootstrap的导航菜单组件相关知识

目录 01-最基本的导航示例02-设置导航的对齐方式02-1-设置导航在水平方向上的对齐方式 02-2-设置导航在垂直方向上进行布局03-设计标签页导航04-带下拉菜单的标签页导航05-设计胶囊式导航05-1-基本的胶囊式导航05-2-带下拉菜单的胶囊式导航 06-让导航菜单项可以切换(激活导航菜…

精品基于django的高校竞赛比赛管理系统Python

《[含文档PPT源码等]精品基于django的高校竞赛管理系统》该项目含有源码、文档、PPT、配套开发软件、软件安装教程、项目发布教程等&#xff01; 软件开发环境及开发工具&#xff1a; 开发语言&#xff1a;python 使用框架&#xff1a;Django 前端技术&#xff1a;JavaScri…

宝塔面板部署express以及MySql项目

第一次在宝塔面板上部署express和MySql项目&#xff0c;部署过程一直跑不通接口&#xff0c;特此记录一下。 在部署的时候&#xff0c;建议第一步把数据库MySql给跑通&#xff0c;中间好多原因是由于数据库的原因给引起的。 一.连接数据库 &#xff08;1&#xff09;在宝塔面…