iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >JDBC 技术详解1
  • 821
分享到

JDBC 技术详解1

2024-04-02 19:04:59 821人浏览 泡泡鱼
摘要

jdbc是数据库中十分重要的一项技术,是我们在做项目最常用的一类接口实现类, 这里就个朋友们简单详细的聊一下。 首先我们应该知道什么是jdbc JDBC(JavaDataBaseConnectivity)j

jdbc是数据库中十分重要的一项技术,是我们在做项目最常用的一类接口实现类,

这里就个朋友们简单详细的聊一下。

首先我们应该知道什么是jdbc

JDBC(JavaDataBaseConnectivity)java 数据库连接 , 是 JavaEE 平台下的技术规范 ,定义了在 Java 语言中连接数据,执行 sql 语句的标准 , 可以为多种关系数据库提供统一访问。

但想要访问数据库就必须使用数据库驱动,

那么什么是数据库驱动呢?
数据库厂商对 JDBC 规范的具体实现 ,不同数据产品的数据库驱动名字有差异 ,在程序中需要依赖数据库驱动来完成对数据库的操作。

JDBC 技术详解1

我们现在使用的是JDBC3.0 标准

其中常用的接口有

1 Driver 接口
Driver 接口的作用是来定义数据库驱动对象应该具备的一些能力。比如与数据库建立连 接的方法的定义所有支持 java 语言连接的数据库都实现了该接口,实现该接口的类我们称 之为数据库驱动类。在程序中要连接数据库,必须先通过 jdk反射机制加载数据库驱动 类,将其实例化。不同的数据库驱动类的类名有区别。 加载 Mysql 驱动:Class.forName("com.mysql.jdbc.Driver"); 加载 oracle 驱动:Class.forName("oracle.jdbc.driver.OracleDriver");

DriverManager 类

DriverManager

通过实例化的数据库驱动对象,能够建立应用程序与数据库之间建立连 接。并返回 Connection 接口类型的数据库连接对象。

常用方法

•getConnection(StringjdbcUrl,Stringuser,StringpassWord)

该方法通过访问数据库的 url、用户以及密码,返回对应的数据库的 Connection 对象。

JDBCURL
与数据库连接时,用来连接到指定数据库标识符。在 URL 中包括了该数据库的类型、 地址、端口、库名称等信息。不同品牌数据库的连接 URL 不同。

Connection 接口

Connection 与数据库的连接(会话)对象。我们可以通过该对象执行 sql 语句并返回结

果。

连接 MySql 数据库: Connection conn = DriverManager.getConnection("jdbc:mysql://host:port/database", "user", "password"); 连接 Oracle 数据库:
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@host:port:database", "user","password"); 连接 SqlServer 数据库: Connection conn = DriverManager.getConnection("jdbc:microsoft:sqlserver://host:port; DatabaseName=database","user","password");

常用方法
•createStatement():创建向数据库发送 sql 的 Statement 接口类型的对象。
•preparedStatement(sql) :创建向数据库发送预编译 sql 的 PrepareSatement 接口类型的

对象。
•prepareCall(sql):创建执行存储过程的 CallableStatement 接口类型的对象。
•setAutoCommit(booleanautoCommit):设置事务是否自动提交。 •commit() :在链接上提交事务。
•rollback() :在此链接上回滚事务。

Statement 接口
用于执行静态 SQL 语句并返回它所生成结果的对象。 由 createStatement 创建,用于发送简单的 SQL 语句(不支持动态绑定)。

常用方法

•execute(String sql):执行参数中的 SQL,返回是否有结果集。 •executeQuery(Stringsql):运行 select 语句,返回 ResultSet 结果集。 •executeUpdate(Stringsql):运行 insert/update/delete 操作,返回更新的行数。
•addBatch(Stringsql) :把多条 sql 语句放到一个批处理中。 •executeBatch():向数据库发送一批 sql 语句执行。

PreparedStatement 接口
继承自 Statement 接口,由 preparedStatement 创建,用于发送含有一个或多个参数的 SQL 语句。PreparedStatement 对象比 Statement 对象的效率更高,并且可以防止 SQL 注入,所以 我们一般都使用 PreparedStatement。

常用方法

•addBatch()把当前 sql 语句加入到一个批处理中。
•execute() 执行当前 SQL,返回个 boolean 值
•executeUpdate()运行 insert/update/delete 操作,返回更新的行数。
•executeQuery() 执行当前的查询,返回一个结果集对象
•setDate(intparameterIndex,Date x)向当前SQL语句中的指定位置绑定一个java.sql.Date

值。

• setDouble(int parameterIndex, double x)向当前 SQL 语句中的指定位置绑定一个 double

•setFloat(intparameterIndex,floatx)向当前 SQL 语句中的指定位置绑定一个 float 值
•setInt(intparameterIndex,intx)向当前 SQL 语句中的指定位置绑定一个 int 值
•setString(intparameterIndex,Stringx)向当前 SQL 语句中的指定位置绑定一个 String 值

ResultSet 接口
ResultSet 提供检索不同类型字段的方法。

常用方法

•getString(intindex)、getString(StrinGColumnName) 获得在数据库里是 varchar、char 等类型的数据对象。 •getFloat(intindex)、getFloat(StringcolumnName) 获得在数据库里是 Float 类型的数据对象。 •getDate(intindex)、getDate(StringcolumnName) 获得在数据库里是 Date 类型的数据。
•getBoolean(intindex)、getBoolean(StringcolumnName) 获得在数据库里是 Boolean 类型的数据。
•getObject(intindex)、getObject(StringcolumnName) 获取在数据库里任意类型的数据。

ResultSet 对结果集进行滚动的方法

•next():移动到下一行。
•Previous():移动到前一行。
•absolute(introw):移动到指定行。
•beforeFirst():移动 resultSet 的最前面。
•afterLast() :移动到 resultSet 的最后面。

CallableStatement 接口

继承自 PreparedStatement 接口,由方法 prepareCall 创建,用于调用数据库的存储过程。

您可能感兴趣的文档:

--结束END--

本文标题: JDBC 技术详解1

本文链接: https://www.lsjlt.com/news/44164.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • JDBC核心技术详解
    一、JDBC概述 1、数据的持久化 持久化(persistence):把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到...
    99+
    2024-04-02
  • ×××技术详解(3)
    九、数据传输阶段   一旦完成上述4阶段的协商,PPP就开始在连接对等双方之间转发数据。每个被传送的数据报都被封装在PPP包头内,该包头将会在到达接收方之后被去除。如果在阶段1选择使用数据压缩并且在阶段4完成了协商,数据将会在被传送之间进行...
    99+
    2023-01-31
    详解 技术
  • JavaWebService技术详解
    目录WebServiceWebService简介WebService原理JAVA WebService规范(1)JAX-WS:(2)JAXM&SAAJ:(3)JAX-RS:W...
    99+
    2024-04-02
  • OCR识别的技术流程解析1
    一、OCR识别预处理:灰度化(如果是彩色图像)、降噪、二值化、字符切分以及归一化这些子步骤。经过二值化后,图像只剩下两种颜色,即黑和白,其中一个是图像背景,另一个颜色就是要识别的文字了;降噪在这个阶段非常重要,降噪算法的好坏对特征提取的影响...
    99+
    2023-06-02
  • Java HttpClient技术详解
    目录一、HttpClient1.1、 前台系统访问后台接口的方式1.2、 什么是HttpClient1.3、 HttpClient入门案例1.3.1、 发起Get请求1.3.2、 带...
    99+
    2024-04-02
  • Java WebService技术详解
    Java WebService技术是一种用于构建分布式应用程序的技术,它允许不同的应用程序通过网络进行通信和交互。Java WebS...
    99+
    2023-08-11
    java
  • JDBC详解(一):JDBC概述
    JDBC概述 前言一、数据的持久化1、概念2、应用 二、Java中的数据存储技术三、JDBC介绍四、JDBC体系结构五、JDBC程序编写步骤 前言 本博主将用CSDN记录软件开...
    99+
    2023-09-11
    java mybatis 数据库
  • MySQL与JDBC之间的SQL预编译技术讲解
    目录先说一下SQL预编译的好处吧下面贴上mysql官方文档截图两种实现进行基准测试客户端实现是否存在SQL注入风险呢?总结先说一下SQL预编译的好处吧 减少每次执行语句时解析语句的开销。 通常,数据库应用程序处理大量几乎...
    99+
    2022-11-15
    MySQLSQL预编译 JDBCSQL预编译 SQL预编译技术
  • Java反射技术详解
    目录前言一、基本反射技术1.1 根据一个字符串得到一个类getClass方法Class.forNameType属性二、获取类的成员获取类中特定的构造方法调用构造方法调用类的私有方法获...
    99+
    2024-04-02
  • MySQL JDBC详解
    MySQL JDBC是Java连接MySQL数据库的一种方式,JDBC全称为Java Database Connectivity,即...
    99+
    2023-09-11
    MySQL
  • IP多播技术详解
    文章目录 前言IP多播技术的相关基本概念IP多播地址和多播组 在局域网上进行硬件多播IP多播地址和多播MAC地址映射关系 在因特网上进行IP多播网际组管理协议IGMP多播路由选择协议 前言 随着计算机网络的发展和个...
    99+
    2023-08-19
    tcp/ip 网络 服务器 ip 运维
  • Android网络技术HttpURLConnection详解
    介绍早些时候,Android 上发送 HTTP 请求一般有 2 种方式:HttpURLConnection 和 HttpClient。不过由于 HttpClient 存在 API 数量过多、扩展困难等缺点,Android 团队越来越不建议我...
    99+
    2023-05-30
    android 网络技术 httpurlconnection
  • 详解commons-pool2池化技术
    目录一、前言二、commons-pool2池化技术剖析2.1、核心三元素2.1.1、ObjectPool2.1.2、PooledObjectFactory2.1.3、PooledOb...
    99+
    2024-04-02
  • Android Hook技术实战详解
    前些天发现了一个蛮有意思的人工智能学习网站,8个字形容一下"通俗易懂,风趣幽默",感觉非常有意思,忍不住分享一下给大家。 👉点击跳转到教程 前言: 什么是Android Hook...
    99+
    2023-09-03
    android Hook 反射 动态代理 view
  • JDBC之PreparedStatement 详解
    JDBC中的PreparedStatement是一种用于执行预编译SQL语句的接口。相比于Statement接口,使用Prepare...
    99+
    2023-09-07
    JDBC
  • 技术杂谈-再谈软硬SDN(1)
    以下文章来源于微信公众号:网络里卖艺的小青年  ,作者KkBLuE  我曾在SDNLAB和TF中文社区联合举办的直播活动上做了一次分享,讨论到软件SDN和硬件SDN的话题,巧合的是,看到国内大牛厂家也在讨论软硬之路,于是...
    99+
    2023-06-03
  • JDBC 技术 | Java连接MySQL数据库(四万字零基础保姆级超全详解)
    文章目录 前言一. JDBC概述1. JDBC 概念2. JDBC 本质3. JDBC 的好处 二. JDBC 快速入门1. 编写Java 程序步骤2. 在IDEA 中的操作流程3. 正式编写 Java程序 三. JDBC ...
    99+
    2023-12-23
    数据库 java mysql JDBC
  • PHP发送短信技术详解
    一、简介随着移动互联网的普及,短信营销越来越受到企业的关注和重视。作为一种实效性极高、成本极低、传递速度极快的宣传方式,短信营销正逐渐成为企业推销新品、掌握市场新变化的重要手段之一。PHP作为一种强大的后端语言,也可以实现短信发送的功能。本...
    99+
    2023-05-21
    PHP 发送短信 技术详解
  • 详解App保活技术实现
    目录前言黑科技进程保活原理Java 层复活进程在 native 层进行 binder 通信方式一 利用 libbinder.so 与 ActivityManagerService 通...
    99+
    2024-04-02
  • Android 中SQLite技术实例详解
    Android和iOS的数据库都是用SQLite来实现.一,SQLite数据库简介:轻量级:SQLite数据库是一个轻量级的数据库,适用于少量数据的CURD;文件本质:SQLite数据库支持大部分SQL语法,允许使用SQL语句操作数据库,其...
    99+
    2023-05-31
    android sqlite lite
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作