连接 oracle 数据库|学习笔记-阿里云开发者社区

开发者社区> 学堂小助手> 正文

连接 oracle 数据库|学习笔记

简介: 快速学习连接 oracle 数据库
+关注继续查看

开发者学堂课程【Java 高级编程连接 oracle 数据库】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/20/detail/433


连接 oracle 数据库


如何通过 JDBC 连接 Oracle 的数据库:

具体内容:

本次将基于 Oracle 的数据库来实现,JDBC 的编程实现,那么在这样的情况下,请一定要保证已经成功的启动了 Oracle 数据库的两个服务:数据监听服务、(listene)实例服务(SID)。

在管理当中我们找到服务,在服务里面我们能够找到监听,其中有两幅,oracleoradb11g_home1TnNSlListenner 以及 oracleservicemldm 这两副要手动启动,如果不启动,程序则无法使用上,但是需要注意的是,这两副启动完后也并不是可以直接连接了。

由于本次将直接利用 JDBC 进行 oracle 数据库的连接,所以必须保证你的系统之中已经配置了 oracle 的驱动程序,驱动程序的配置分两种情况

 

情况一

如果你现在使用了记事本进行程序编写,则需要将其手工配置到 classpath 之中,比如说我们找到一个操作跟上一个环境,这么这个地方有一个 classpath ,第二个就是我们的程序路径,这个程序在我们安装目录之中,找到我们 oracle 之中的安装程序包,这个地方是有它的程序路径的,我们找到 6 ,它就是我们的驱动程序路径,

oracle 驱动程序路径:D:\app\mldn\product\11.2.0\dbhome_1\jdbc\lib\ojdbc6.jar; 那么就要在系统中将路径配置到 classpath 之中,这样才能在本机命令行方式进行编写,但是这种方式对于 lips 是无效的,所以需要第二种情况。

 

情况二

基于 Eclipse 开发,所以需要在 JavaBuilderPath 上配置此驱动程序,我们找到Eclipse,将属性,buildpath,classpath,加入扩展架,把代码放进去就可以完成了

然后将路径复制过来,正常开发情况下,建议我们用第二种做法,用 class 配置非常复杂,我们现在一个包,但是可能以后会有上百个包,用 class 下来就非常麻烦,

 

如果现在要连接 Oracle 数据库,则必须采用如下的步骤进行处理

 

1、保证情况正常的情况下,通过反射机制加载数据库驱动程序类Oracle JDBC 程序下有一个 Oracle driver,是驱动程序,通过反射机制加载数据库驱动程序类: Oracle.jdbc.driver.oracledriver

 

2、数据库的连接需要有一个网络的连接地址,该地址结构如下,地址结构jdbc:Oracle:thin:@主机名称:端口号:SID。

MLDN 数据库:jdbc:Oracle:thin:@localhost:1521:mldn 也可以直接写 IP 地址,这就是数据库的连接地址,static final sting 跟上database,找到 UR,但是只靠连接地址不行,我们还需要数据库的用户名:Scott 数据库的密码:tiger 问题是连接怎么做

 

对于数据库的连接,提供有 java.sql.drivermanager 的数据类,利用此类中的方法可以获取一个 connection 的接口对象。

 

3、获取 connection 的接口对象,找到 drivermanager,用此方法直接跟上连接对象,接入地址,用户以及密码

 

范例:实现具体的数据库连接操作,找到 connectionConn 表,每一个 connection的接口对象描述的就是一个用户连接,那么 Conn 就等于 drivermanager.getco,数据库的连接资源有限一定要关闭,这样就实现了一个数据库的连接处理,实验验证即可。

(如果此时在输出 connection 的接口对象的时候并没有任何的异常,那么就表示当前的 Oracle 数据库已经可以正常的连接了。)

 

但是这个时候肯定都在思考一个问题:

为什么要连接 Oracle 数据库的时候一定要单独配置数据库的驱动程序呢?

首先 JDBC 是一个操作标准,既然是标准,那么就证明里面是不牵扯到具体实现类,有数据库厂商来实现,下面将以上连接的过程通过类图的关系来进行描述,首先我们见到接口,将它取来,这个接口名字为 connection,每一个用户就是connection,这个 connection 一定允许实现自动关闭处理,我们跟上 autocloseable,在这个操作处理的时候,这个 connection 的连接对象被drivermanager 所获得,那 drivermanager 需要操作三项支持,分别是连接地址,用户名,密码。

 

 

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
【原】java应用程序连接Oracle rac的URL写法
作者:david_zhang@sh 【转载时请以超链接形式标明文章】 链接:http://www.cnblogs.com/david-zhang-index/archive/2012/07/18/2597573.
880 0
SQL数据库学习之路(六)
一、连接查询:当需要的结果需要从多张表中取时 关键问题:哪些表、关系(学生表的Id联系到班级表的Id) 内连接:inner join,两表中完全匹配的数据。
810 0
JDBC 连接 Oracle 11g Release 2
/********************************************************************************** * Created on Nov, 2011 Copyright(c) http://vigilance.co.in All Rights Reserved. ********************************
919 0
PHP连接数据库学习手册
范例 1: Select 指令 任务:连结到 Access 的 Northwind DSN,然后在每一列显示头2个字段。(Northwind 北风数据库,在ODBC设定的DSN,是Access的标准范例数据库) 在这个范例中,我们建立一个 ADOConnection 对象,它代表了和数据库的连结。连结是以 PConnect 函数来初始化的,然后会持续的连结着。任何时候我们要
1028 0
Oracle学习笔记_02_基本SQL
1.select语句   (1)语法 SELECT *|{[DISTINCT] column|expression [alias],...} FROM table; (2)示例: 选择全部列 SELECT * FROM departments; 选择特定列 SELECT department_id, location_id FROM departments;   (3)注意         SQL 语言大小写不敏感。
700 0
重新学习MySQL数据库6:浅谈MySQL的中事务与锁
『浅入深出』MySQL 中事务的实现   在关系型数据库中,事务的重要性不言而喻,只要对数据库稍有了解的人都知道事务具有 ACID 四个基本属性,而我们不知道的可能就是数据库是如何实现这四个属性的;在这篇文章中,我们将对事务的实现进行分析,尝试理解数据库是如何实现事务的,当然我们也会在文章中简单对 MySQL 中对 ACID 的实现进行简单的介绍。
1431 0
1116
文章
0
问答
来源圈子
更多
技术图谱:由专家组参与技术图谱的绘制与编写,知识与实践的结合让开发者们掌握学习路线与逻辑,快速提升技能 电子书:电子书由阿里内外专家打造,供开发者们下载学习,更与课程相结合,使用户更易理解掌握课程内容 训练营:学习训练营 深入浅出,专家授课,带领开发者们快速上云 精品课程:汇集知识碎片,解决技术难题,体系化学习场景,深入浅出,易于理解 技能自测:提供免费测试,摸底自查 体验实验室:学完即练,云资源免费使用
+ 订阅
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载