版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第22章 Oracle在Java开发中的应用,Oracle是数据库系统,因此,应用程序要调用Oracle数据库,需要首先进行连接,并根据特定语法进行操作。编程语言的不同,决定了与Oracle的相关操作的不同。本章主要讲述Oracle在Java开发中的应用。本章的主要内容包括: 利用JDBC连接Oracle数据库; 利用JDBC操作Oracle数据库; Hibernate简介; 利用Hibernate操作Oracle数据库。,22.1 通过JDBC使用Oracle,一种数据库可以为多种编程语言所用;同样,一种编程语言中也可以使用多种数据库。在Java语言中,提供了JDBC方式来访问和操作各种数据
2、库。,22.1.1 JDBC简介,JDBC全称为Java DataBase Connectivity standard,它是一个面向对象的应用程序接口(API),通过它可访问各类关系数据库。JDBC也是Java核心类库的一部分。 JDBC相当于访问数据库的模板,它独立于具体的关系数据库。Java提供了若干类来处理数据库操作。例如提供了Connection类来获得数据库连接,提供了Statement来封装SQL语句,提供了ResultSet类来存储由数据库返回的结果集合。 针对不同的数据库,需要不同的数据库驱动支持。而这些支持类大多由数据库厂商提供。数据库驱动中封装了数据库相关操作的所有类。 通
3、常,Java程序首先使用JDBC API来与JDBC Driver Manager交互。由JDBC Driver Manager载入指定的JDBC 驱动,然后建立数据库连接, 最后通过JDBC API来操作数据库。,22.1.2 准备工作,在进行实际的开发之前,需要按照以下步骤完成准备工作。 (1)安装JDK及JRE环境,并设置JAVA_HOME和CLASSPATH环境变量。 (2)安装Eclipse,并在Eclipse中创建新的测试项目test,。 (3)在互联网上下载Oracle 10g的JDBC驱动程序的jar包,在本例中文件名为ojdbc14_10g.jar。 (4)在项目目录test
4、下创建名为lib的子目录,并将ojdbc14_10g.jar复制到该目录下。 (5)将ojdbc14_10g.jar添加到test项目的build path中 。 (6)此时,项目test创建完成。,22.1.3 JDBC连接Oracle,1加载JDBC驱动 对于下载获得的JDBC驱动,必须首先将其加载到JVM并执行初始化。因此,应该利用如下Java代码加载JDBC载驱动。 Class.forName(oracle.jdbc.driver.OracleDriver); 2连接字符串的使用 JDBC连接任何数据库,都需要一个连接字符串。连接字符串包括了针对数据库连接所需的各种信息。对于不同数据厂
5、商只要使用不同的连接字符串,而使用相同的代码,即可实现不同数据库的连接。在Oracle中,连接字符串的格式为: String url = “jdbc:oracle:thin:host:port:sid 3获得数据库连接 可以利用DriverManager类的静态方法来获得数据库连接,代码如下: Connection connection = DriverManager.getConnection(url, username, password);,22.1.4 利用JDBC查询数据,在获得了数据库连接之后,可以利用该连接来创建表达式对象。表达式对象可以用于处理查询请求,并返回结果集合。,22.
6、1.5 利用JDBC更新数据,数据的更新包括插入和修改。利用JDBC更新数据库的步骤与查询步骤基本相同。不同点在于,查询操作使用表达式对象的executeQuery()方法,而更新操作,则使用表达式对象的executeUpdate()方法。,22.1.6 总结JDBC操作数据库,利用JDBC操作数据库,首先要建立数据库连接。而不同的数据库,JDBC提供的连接字符串模式不同,因此,应该根据不同数据库,使用不同的连接字符串。 在建立数据库连接之后,可以利用该连接来获得表达式对象。表达式对象可以向数据库传递操作语句,以实现与数据库的沟通。这里需要注意的是查询数据与更新数据,需要使用不同的方法。,22
7、.2 通过Hibernate操作Oracle数据库,Hibernate的底层同样利用了JDBC技术。Hibernate框架的真实意义在于,将本来针对关系型数据库的操作,转化为Java中面对对象的操作。这样做的好处是,使面对对象的程序员的开发更加的心应手。另一方面,利用面对编程语言的特点,例如继承,可以使代码的重用性得到极大提高,提高开发效率。,22.2.1 准备工作,要使用Hibernate,必须首先下载支持包。Hibernate支持包的下载地址为:。Hibernate的核心包为hibernate.jar。除了Hibernate.jar文件,还需要
8、其他辅助文件。,22.2.2 配置Hibernate,Hibernate实现了从关系型数据库向Java对象的映射。而这种映射则是通过配置文件来实现的。在Eclipse中创建项目,并实现Hibernate配置。 (1)在Eclipse中创建新的Java项目,并将该项目命名为“HibernateOracle”。 (2)将所需jar包添加到项目的Build Path中。 (3)在项目HibernateOracle的src目录下创建新的包com.example.bean,并在该包下创建名为People的Java类。 (4)在项目目录中的src子目录下创建名为people.hbm.xml的文件。 (5)
9、在项目目录下的src子目录中创建名为hibernate.cfg.xml的配置文件。 (6)新建名为com.example.util的包,并在该包下创建名为DbUtil的Java类。,22.2.3 利用Hibernate查询数据,在Hibernate配置成功之后,可以创建测试类来执行查询数据库。在项目目录下的src子目录下创建名为com.example.test的包,并在其下创建名为TestQuery的Java类。,22.2.4 利用Hibernate更新数据,使用Hibernate更新数据,首先应该获得要更新的对象,并修改对象的属性。在对象变更之后,再将对象的变更反映到数据库中。在包com.e
10、xample.test中创建名为TestUpdate的Java类。,22.2.5 利用Hibernate插入数据,同样,可以利用Hibernate向数据库中插入数据。向数据库中插入数据,需要首先创建对象,然后为该对象组装数据,最后利用Hibernate会话的save()方法来保存对象。在com.example.test包下创建名为TestInsert的Java类。,22.3 本章小结,本章讲述了如何通过JDBC和Hibernate两种不同方式操作数据库。利用JDBC进行操作,简单易学,但是代码可重用性不高;利用Hibernate则可以充分利用面向对象编程的种种优势,从而开发出层次更加明晰,重用性更高的代码。需要注意的是,Hibernate的底
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年大学绿化设备安装(绿化设备安装)试题及答案
- 2025年大学本科(食品科学与工程)食品机械与设备试题及答案
- 2025年大学化学(环境化学基础)试题及答案
- 2025年大学图书馆学(图书馆服务管理)试题及答案
- 2025年中职(观光农业经营)园区管理综合测试题及答案
- 2025年中职(船舶驾驶)船舶操纵技术阶段测试试题及答案
- 2025年高职木业智能装备应用技术(木工机械操作)试题及答案
- 2025年大学本科 皮影表演(表演实务)试题及答案
- 2025年中职哲学(伦理学)试题及答案
- 2025年中职高星级饭店运营与管理(酒店人力资源管理)试题及答案
- 特种工安全岗前培训课件
- 新疆维吾尔自治区普通高中2026届高二上数学期末监测试题含解析
- 2026届福建省三明市第一中学高三上学期12月月考历史试题(含答案)
- 2026年辽宁金融职业学院单招职业技能测试题库附答案解析
- (正式版)DB51∕T 3342-2025 《炉灶用合成液体燃料经营管理规范》
- 2026北京海淀初三上学期期末语文试卷和答案
- 2024-2025学年北京市东城区五年级(上)期末语文试题(含答案)
- 人工智能在医疗领域的应用
- 2025学年度人教PEP五年级英语上册期末模拟考试试卷(含答案含听力原文)
- 【10篇】新部编五年级上册语文课内外阅读理解专项练习题及答案
- 南京市雨花台区医疗保险管理中心等单位2025年公开招聘编外工作人员备考题库有完整答案详解
评论
0/150
提交评论