`

JDBC 基本概念理解

    博客分类:
  • JDBC
阅读更多

 

JDBC概念

 

每个数据库产商有自己的数据库驱动程序(数据库厂商自己写的代码),提供和数据库的交互

数据库驱动程序ó数据库的交互接口

 

现状描述:

   1.    不同的数据库,接口(数据库驱动程序)不一样。不同的驱动接口,就像是不同的OS有不同接口,JVM屏蔽了底层的差异。

   2.   必须有开发人员或"客户"需要和数据库驱动程序来交互 ,

问题:

   1.   不同的驱动程序,开发人员需要重复开发等等。

解决:

JDBC设有2中接口,一个是面向应用程序层,其作用是使得开发人员通过SQL调用数据库和处理结果,而不需要考虑数据库的提供商;另一个是驱动程序层,处理与具体驱动程序的交互,JDBC驱动程序可以利用JDBC API创建Java程序和数据源之间的桥梁。

(驱动程序:JDBC驱动程序A和数据库厂商提供的驱动程序B)

PsA是和B交互的,B是和数据库交互的

 

JDBC面向驱动程序层开发的人员,即对JDBC 应用层开发接口的实现,则不同的JDBC驱动有了相同的应用层接口,但底层驱动实现不同(因为需要调用不同数据库产商的驱动,所以一定是不同的实现的)

 

但是:Sun提供了一个驱动管理器(DriverManager),数据库供应商——MySQLOracle,提供的驱动程序满足驱动管理器的要求就可以被识别,就可以正常工作。所以JDBC不受数据库供应商的限制。

ó sun 提供了统一的 DriverManager 类,数据库厂商的驱动需要满足驱动管理器的要求ó sun 对数据库厂商的驱动进行了一定程度的规范

 

 

问题:

JDBC涉及到网络的连接,事务的执行。

    开销:每次连接都是JDBC驱动和数据库驱动的交互,以及网络的建立。

    事务的执行:事务即一系列的操作,(关系型数据库)具有ACID特性

 

  

二、JDBC连接数据库的流程及其原理

1在开发环境中加载指定数据库的驱动程序

2Java程序中加载驱动程序。

Java程序中,可以通过 “Class.forName(“指定数据库的驱动程序”)” 方式来加载添加到开发环境中的驱动程序,例如加载MySQL为: Class.forName(“com.mysql.jdbc.Driver”)

3创建数据连接对象:通过DriverManager类创建数据库连接对象Connection

DriverManager类作用于Java程序和JDBC驱动程序之间,用于检查所加载的驱动程序是否可以建立连接,然后通过它的getConnection方法,根据数据库的URL、用户名和密码,创建一个JDBC Connection 对象。

如:Connection connection =  DriverManager.geiConnection(“连接数据库的URL", "用户名", "密码”)。其中,URL=协议名+IP地址(域名)+端口+数据库名称;用户名和密码是指登录数据库时所使用的用户名和密码。具体示例创建MySQL的数据库连接代码如下:

ó DriverManager 检查加载的JDBC驱动是否符合规范。

ó根据数据库的URL、用户名和密码,连接数据库。ConnectionTCP的连接,每次建立连接都需要数据库的URL、用户名和密码,这些信息相当于HTTP的参数,供数据库驱动程序解析。

4创建Statement对象:Statement 类的主要是用于执行静态 SQL 语句并返回它所生成结果的对象。通过Connection 对象的 createStatement()方法可以创建一个Statement对象。例如:Statement statament = connection.createStatement(); 具体示例创建Statement对象代码如下: Statement statamentMySQL =connectMySQL.createStatement(); 

ó此时已经建立了ConnectionTCP连接,Statement相当于是HTTP中的AJAX,只不过不是异步的。这里发送SQL参数等等,以及接受结果。

5调用Statement对象的相关方法执行相对应的 SQL 语句

6关闭数据库连接:

 

 

 

分享到:
评论

相关推荐

    JDBC数据库编程实验

    (4)理解JDBC中实现事务处理的基本方法; (5)理解数据库连接池的基本原理和思想,学会在tomcat服务器中配置数据库连接池,并掌握从连接池中获取连接的基本方法。 (6)初步理解数据访问层的基本设计方法,理解web...

    实验九:JDBC编程

    本次实验,我了解了JDBC的概念与使用场景,理解了JDBC的工作原理,掌握了使用JDBC操作数据库的基本步骤,掌握了JDBC中几个常用接口和类,了解了带数据库操作的应用程序开发步骤等。

    JSP(Servlet)+MySQL(JDBC) 实现增删改查的信息管理应用

    适合初学者理解Servlet,JDBC,MySQL,JSP等基本概念。

    JAVA实验报告四数据库编程.docx

    (2)理解JDBC的概念 (3)运用JDBC-ODBC桥开发数据库系统 2、基本要求: (1)注意自始至终贯彻课程中所绍程序设计风格,养成良好的编程习惯。 (2)独立完成所布置习题。 (3)为保证尽量在统一安排的上机时间内编译运行通过...

    JDBC实验报告.doc

    实验报告 "学院 "计算机学院 "班级 " "学号 " "姓名 " " "课程名称 "Java程序设计 "实验日期 " " "实验名称 "数据库应用开发 "成绩 " " "实验目的:深入理解JDBC数据库驱动程序的概念,掌握JDBC提供的访问数据库相 ...

    面向对象与多线程java实验.zip

    由此了解软件开发的一般过程,深入理解面向对象语言的基本概念和基本原理,理解和掌握继承与多态、异常处理、输入输出流、GUI设计、JDBC数据库操作、网络编程、多线程等技术;熟练掌握在Java语言环境下,上述技术的...

    java档案管理系统实验报告

    由此了解软件开发的一般过程,深入理解面向对象语言的基本概念和基本原理,理解和掌握继承与多态、异常处理、输入输出流、GUI设计、JDBC数据库操作。 代码emmmm报告里贴了一部分,为什么不可以设置免费啊这个,纯粹...

    武汉理工大学面向对象与多线程综合实验报告

    由此了解软件开发的一般过程,深入理解面向对象语言的基本概念和基本原理,理解和掌握继承与多态、异常处理、输入输出流、GUI 设计、JDBC 数据库操作、网络编程、多线程等技术;熟练掌握在 Java 语言环境下,上述...

    zzu数据库实验报告书

    通过实验,使学生深入理解数据库系统原理的基本概念,掌握概念模型、关系模型,熟悉各种SQL 命令,能够定义数据库,查询检索、管理控制数据库。采用某种数据库开发软件,如openGauss,通过构建或者模拟简单的数据库...

    动力节点老杜推荐Java学习路线

    学习Java的基本语法和数据类型,了解变量、运算符和控制流程等基本概念。 深入学习面向对象编程的核心概念,如类、对象、封装、继承和多态。 掌握Java的常用类库,包括字符串处理、日期与时间、输入输出流等,为后续...

    java课程设计:通讯录管理系统

    理解并应用数据库设计和连接: 通过与MySQL数据库的交互,学会设计数据库表结构、进行增删改查等基本操作。使用JDBC连接数据库,实现系统与数据的有效交互,从而提升对数据库设计和连接技术的理解和应用。 培养软件...

    java多线程综合实验2020年1月武汉理工大学1—7次实验源代码(运行通过).rar

    由此了解软件开发的一般过程,深入理解面向对象语言的基本概念和基本原理,理解和掌握继承与多态、异常处理、输入输出流、GUI设计、JDBC数据库操作、网络编程、多线程等技术;熟练掌握在Java语言环境下,上述技术的...

    《面向对象程序设计java)》课程整体教学设计.docx

    通过完成我爱追星、门禁系统、成绩管理、跑步比赛、键盘游戏图形界面程序,使学生能够熟深入理解面向对象的基本概念,熟练运用GUI、多线程、集合、JDBC等java编程技术,熟练运用面向对象程序设计的编程思想开发微型...

    用 jsp 仿写 csdn 的源码

    通过 CPPSDN 实践,深入了解 JSP 技术的基本概念、原理和应用。提高自己的编程能力和 Web 应用开发技能,加深对 Web 技术的理解和应用。通过实现具体的 CPPSDN 网站,掌握 JSP 技术的基本要素,如 Servlet 和 JSP ...

    学习笔记(01):Hadoop大数据从入门到精通-Hadoop的介绍及基本概念

    Hapood三大核心组件 1.HDFS:存储、分布式文件系统 ...2.当作服务软件,C/S架构,例如MySQL(使用JDBC调用),缓存服务redis,索引服务solr。可以存储、分析数据。 Hadoop的历史: 1.google三篇论文:GFS/MAPRE

    Java入门1·2·3——一个老鸟的Java学习心得 高清pdf

    本书充分考虑了初学Java语言的种种困难,讲解时细致入微,抽丝剥茧,层层推进,并采用对比、比喻和类比的方式讲解,还给出了大量的流程图帮助读者理解各种概念和程序的运行过程。另外,作者专门录制了近16小时的...

    javaspring 培训教程 TP1.docx

    它提供了一 些基本组件,如事务管理、 MVC 框架、 JDBC 、ORM 等,同时 也支持其他开源框架,比如 Hibernate 、MyBatis 等。 Java Spring 的优点是可扩展性更高、更加灵活,可以适应各种场景 的需求。 Java Spring ...

    spring基础进阶技巧200篇.zip

    Spring框架概述:介绍了Spring框架的基本概念、特点和优势。 Spring核心模块:详细介绍了Spring的核心模块,如IoC容器、AOP、Bean管理等。 Spring MVC:介绍了Spring MVC框架的使用方法和技巧,包括控制器、视图解析...

    JSP 程序设计从入门到精通 PDF 教程

     本书较为全面地介绍了JSP技术,由浅入深、循序渐进地介绍了JSP的运行系统,基本概念,语法规范及其相关内容,从基本的JSP概述、与其他技术的对比,到JSP的运行系统和模式,逐步深入地对JSP语法规范进行了详细的...

    基于java的进销存或库存管理系统源码.zip

    它适合大学生作为学习材料,帮助理解Java编程的基本概念和实践;适合上班族作为提升技能的资源,学习如何在实际工作中应用Java;也适合初学者入门Java编程,逐步掌握从基础到高级的知识和技能。

Global site tag (gtag.js) - Google Analytics