主要知识点

1、JDBC概述

  • 什么是JDBC【掌握

英文命名:Java DataBase Connection(JDBC),Java数据库连接,是一组由Java编写的类和接口组成。

  • JDBC实现的功能【掌握

功能:

  1. 用于执行数据库访问的应用程序API

初识JDBC(自学笔记)

2) 用统一的语法对多种关系数据库进行访问,不必关心数据库语言之间的差异

初识JDBC(自学笔记)

 

  • JDBC的体系结构【了解】

JDBC的体系结构分为两层:

  1. 驱动程序管理器接口(JDBC Driver Interface)
  2. JDBC应用程序接口(JDBC API),即包含的类和接口

初识JDBC(自学笔记)

  • JDBC的特点【理解】

优点:

1)使开发人员从复杂的不同的驱动器调用接口解脱出来,主要关注核心的业务逻辑即可

2)支持不同的数据库,大大增强了程序的移植性

3)JDBC的API是面向对象的,可以对其提供的方法进行二次封装

缺点:

  1. 使访问数据库的速度受一定的影响(肯定不如直接操作数据库快)

2)JDBC体系结构中包含不同厂家的产品,更改数据源时会带来一定的麻烦

  • JDBC的核心接口与类【掌握
  1. 核心类:

DriverManager: 负责管理JDBC的驱动程序

SQLException: 封装了数据库操作产生的异常

  1. 核心接口:

Connection: 代表特定数据库的连接,即连接通道

Statement: 执行静态SQL语句

PreparedStatement: 用于执行预编译的SQL语句,是Statement的子接口

ResultSet: 代表执行查询语句返回的结果集

CallableStatement:用于执行存储过程,并处理存储过程返回的结果

2、创建JDBC应用

  • 创建JDBC应用程序的步骤【重点掌握
  1. 载入JDBC驱动程序
  2. 建立连接,需要指定连接数据库的URL、用户名、密码(这是连接数据库的三要素)
  3. 创建statement对象
  4. 执行SQL语句
  5. 处理结果集
  6. 关闭数据库的连接

初识JDBC(自学笔记)

  • 数据库驱动程序【深入理解】

分类:

1)Type1:  JDBC-ODBC桥

通过JDBC-ODBC桥来操作ODBC数据源对应的数据库,此种方法需要服务器安装ODBC组件。

2)Type2:  本地API驱动

把JDBC调用转变为数据库的标准调用函数再去访问数据库,此种方法需要本地数据库驱动代码

3)Type3: 网络协议驱动

使用网络协议将请求发送给中间服务器,再由中间服务器去访问数据库服务器

4)Type4: 本地协议驱动(目前最常用的)

直接把JDBC调用转换为符合数据库系统协议规范的请求,属于直接调用数据库,省略中间组件或中间服务器环节。

完全由Java编写,实现了平台独立性。

 

注意4)也叫直连,可以用现实生活中的找对象的例子阐述(传统找对象用媒婆,现在不用)

初识JDBC(自学笔记)

 

连接Oracle11g的驱动程序:

 

  • 按步骤实现JDBC操作
    • 步骤1:加载JDBC驱动程序

初识JDBC(自学笔记)

会抛出:ClassNotFoundException异常,try catch捕获

  • 步骤2:建立连接

初识JDBC(自学笔记)

会抛出:SQLException异常,try catch捕获

 

  • 步骤3:创建Statement对象

初识JDBC(自学笔记)

    • 步骤4:执行SQL语句

初识JDBC(自学笔记)

 

  • 步骤5:处理结果集

初识JDBC(自学笔记)

初识JDBC(自学笔记)

    • 步骤6:关闭数据库连接

初识JDBC(自学笔记)

示例代码

 

示例1、查询scott用户下的部门信息

初识JDBC(自学笔记)

初识JDBC(自学笔记)

示例2、重构示例1,把结果集的数据放入部门对象,并把部门对象放入List里

重构后的项目结构如下:

初识JDBC(自学笔记)

 

 

 

实体类DeptInfo的结构如下:

初识JDBC(自学笔记)

DeptDB类:

初识JDBC(自学笔记)

初识JDBC(自学笔记)

初识JDBC(自学笔记)

初识JDBC(自学笔记)

充知识点

 

1、sql语句的写法:select *和select 字段列表

推荐使用select字段列表,性能要比select *要高;因为select *要执行全表扫描。

初识JDBC(自学笔记)

2、sql语句在程序中的编写规范

SQL关键字一律大写,其他可小写

初识JDBC(自学笔记)

 

3、Oracle经历的版本号:

Oracle 8i/9i

I:internet:改变了Oracle的访问方式

Oracle 10g/11g

g:grid,改变了Oracle的数据存储方式,提高了数据查询效率

Oracle 12c

C:component:改变了Oracle实例的运行方式

 

4、关于开发工具Eclipse Mars

Eclipse版本:Mars 4.5

JDK版本:JDK1.7+     6位

5、安装Eclispe和JDK说明

1)直接解压到没有中文和空格的目录里

2)配置JDK的环境变量JAVA_HOME,并把JAVA_HOME配置到Path里

3) 验证JDK是否配置成功,在cmd窗口输入javac  -version或者java  –version

后,如果显示版本号,则证明配置成功

6、包的作用及命名规则:

1)包是用来区分相同类名的类

2)包的命名规则反域名

如:www.neusoft.com--域名  反域名:com.neusoft.www

Cls3.neusoft.com

常见错误/异常分析

1、如果把驱动程序的包名写错,会报什么异常?

初识JDBC(自学笔记)

2、如果把url写错(ip地址、端口号),会报什么异常?

初识JDBC(自学笔记)

 

3、如果把用户名/密码写错,会报什么异常?

初识JDBC(自学笔记)

4、在处理结果集时,有如下代码片断,位置(1)、位置(2)、位置(3)代码因写法不同,运行结果会如何?哪种写法代码最优呢?

初识JDBC(自学笔记)

初识JDBC(自学笔记)

初识JDBC(自学笔记)

 

 

5、结果集里的字段大小写与程序中SQL语句中的字段大小写有关系吗?

 

6、出下如下异常可能的原因:

1)初识JDBC(自学笔记)

产生的原因:

  1. Oracle服务器上的监听没有启动,启动:lsnrctl start
  2. Oracle数据库的ip地址、端口号写错了

       2)初识JDBC(自学笔记)

      产生的原因:

  1. 监听器的启动顺序后于oracle实例的启动,则会导致此异常;应该先启动监听,然后再启动oracle的实例
  2. 实例名写错了

课后作业

 

  1. 什么是JDBC,何时用到JDBC?

答:Java DataBase Connection,java数据库连接,是一组由java编写的类和接口组成

2、JDBC有哪些特点?

3、JDBC有哪些核心类和接口,其作用分别是什么?

4、创建JDBC的核心步骤有哪些?

5、数据库驱动程序分为哪几类,其区别是什么?

6、上机示例:按照JDBC的标准步骤,查询scott用户下的emp表的信息员工编号、姓名、职位、薪水、部门名称。

课后作业

1、暂无

 

2、暂无

 

相关文章:

  • 2021-07-29
  • 2022-12-23
  • 2021-06-02
  • 2022-12-23
  • 2021-10-18
  • 2021-12-29
  • 2021-09-20
  • 2021-06-30
猜你喜欢
  • 2021-12-10
  • 2022-12-23
  • 2021-11-21
  • 2021-06-16
  • 2021-12-07
  • 2021-05-02
  • 2021-11-27
相关资源
相似解决方案