JDBC-Oracle连接教程
前言
本文通过一个在Eclipse平台中搭建的小项目,在项目中使用一条静态命令来查询Oracle数据库测试用户“scott”下emp表中的几个字段,来学习JDBC连接数据库的方法。看完之后读者可以基本掌握JDBC-Oracle数据库连接方法,然后举一反三,学会使用使用JDBC连接其它数据库。
0.jdbc的连接步骤
①导入数据库的jdbc资源包(jar包)
②注册驱动
③建立数据库连接(Connection)
④准备SQL语句
⑤获取SQL语句发送器(Statement)
⑥发送并执行SQL语句,得到结果集(ResultSet)
⑦处理结果集
⑧关闭
1.导入资源包
从各数据库的安装目录中找到jdbc资源包,copy至需要的项目中。
以Oracle数据库为例
①以作者本机的Oracle安装地址作为参考,在“D:\Oracle\product\11.2.0\dbhome_1\jdbc\lib”下找到资源包,找到其中的“ojdbc6.jar”,复制到eclipse的项目中新建的lib文件夹中去。

②右键这个文件,选择Build Path->add to Build Path
然后就可以看到新增的资源包

2.注册驱动与建立数据库连接
①先用Class.forName()方式映射驱动类地址进来
②设置三个参数url、user、password
- url中“固定格式为 ‘jdbc:数据库名:连接方式:@数据库地址:端口号:实例名’ ”
- user表示访问数据库使用的用户名
- password表示用户名对应的密码
③使用DriveManagement工具获得一个Connection(使用三参构造方法)对象

④设置完后可以使用使用print方法输出conn对象,能够正常输出说明连接建立成功

3.准备SQL语句
准备需要执行的SQL语句,这里我们用一句静态的SQL指令来说明。
|
String sql=”select empno,ename,hiredate form emp”; //注意引号里的sql命令不需要以分号结束 |
4.创建发送器Statement
发送器用来将需要执行的sql语句发送给数据库。
发送器由连接器对象调用方法创建:
|
Statement st = conn.createStatement(); |
5.发送SQL语句执行并返回执行后的结果集
结果集由发送器发送并执行SQL命令返回获得。
|
ResultSet rs = st.excuteQuery(sql); //参数sql为我们定义的sql语句 |
6.处理结果集
结果集中的数据存储在一个二维表中,我们需要输出其中的元素来得到相应的数据。
在ResultSet类中,使用next方法判断结果表是否还有下一行,如果有则返回true,否则返回false。
该表的光标只能迭代一次,也就是说这个二维表只能遍历一次。
使用循环+getXXX方法获得对应的数据类型的列值。
|
while(rs.next()) { int empno=rs.getInt(1); String ename=rs.getString(2); Date hiredate=rs.getDate(3);//除了填列号还可以填列标签如这里可以填“hiredate” System.out.println(empno+"\t"+ename+"\t"+hiredate); } |
其中Date导入的是java.sql.Date包
7.关闭流
关闭流需要反向关闭,不然会报异常。
|
rs.close(); st.close(); coon.close(); |
8.效果展示

结束分割线
JDBC-Oracle连接教程的更多相关文章
- jdbc oracle 连接串
jdbc.url配置为: jdbc:oracle:thin:@xxx.xx.xx.xx:1521:orclpdb 报错: java.sql.SQLException: Listenerrefused ...
- jdbc oracle 连接字符串
1.普通SID方式 jdbc:oracle:thin:username/password@x.x.x.1:1521:SID 2.普通ServerName方式 jdbc:Oracle:thin:user ...
- oracle 数据库安装及jdbc的连接
今天,我在oracle的官网下载了数据库并进行安装,其中遇到一些问题,在此进行记录. 1.下载,之后,按照网上的教程进行安装,开始遇到 下载之后出现11g 出现ins13001环境不满足最低要求 这个 ...
- Java中通过JDBC远程连接Oracle数据库
通过jdbc连接数据库,拢共分三步: 第一步:下载一个JDBC的驱动,然后把jar包扔到项目里并add to build path: 第二步:去本地oracle文件夹下找到“TNSNAMES.ORA” ...
- Oracle 12c JDBC方式连接PDB数据库
1.配置监听 这里假定CDB数据库名为ORCL,PDB在CDB下面名称为PDBORCLlistener.ora添加(#后面为注释,不要添加进去) SID_LIST_LISTENER = (SID_LI ...
- Oracle JDBC 标准连接实例
Oracle JDBC 标准连接实例 // 创建一个数据库连接 Connection con = null; // 创建预编译语句对象,一般用PreparedStatement不用Statement ...
- JDBC Oracle sys 用户连接
Class.forName("oracle.jdbc.driver.OracleDriver"); conn = DriverManager.getConnection( &quo ...
- jdbc之连接Oracle的基本步骤
// 1.加载驱动程序 Class.forName("oracle.jdbc.driver.OracleDriver"); // 2.获取数据库连接 Connection conn ...
- jdbc简单连接oracle数据库
package com.shangsheng; import java.sql.*; public class UserOracle { public static void main(String[ ...
- JDBC快速入门教程
JDBC是什么? JDBC API是一个Java API,可以访问任何类型表列数据,特别是存储在关系数据库中的数据.JDBC代表Java数据库连接. JDBC库中所包含的API通常与数据库使用于: 连 ...
随机推荐
- log4j的简介和使用
一.log4j是什么 引用官网的介绍 Log4j is a fast and flexible framework for logging application debugging messages ...
- 新版ios证书的申请
现在IOS不再开放提供测试证书了,整理一个申请证书的流程. 1. 申请应用的id 链接地址 https://developer.apple.com/登陆开发者中心,在account界面点击红框里面得区 ...
- js /Date(1550273700000)/ 格式转换
self.FormatJsonDate = function (jsonStr) { var tmp = ""; if (jsonStr == null || jsonStr == ...
- 浅谈requireJS 摘自http://www.cnblogs.com/giggle/p/5436710.html
项目中大都使用模块化开发,requireJS作为AMD模块开发的典范,所以有必要学习下.通过一步步利用requireJS编写demo,从而学习requireJS的一个整体开发流程以及自我使用requi ...
- SMS PDU编码数据串格式分析
PDU协议数据单元详细介绍 PDU 相当于一个数据包,它由构成消息(SMS)的信息组成.作为一种数据单元,它必须包含源/目的地址.保护(有效)时间.数据格式.协议类型和正文,正文长度可达140字节,它 ...
- wpf binging (六)多绑定
场景 比如我用四个textbox 需要每个控件都输入正确的数据以后 下方的 button才变成可用状态 需要把四个textbox的值转换成 true或者false 效果
- 10/03/2019 PCL-1.8.1 Ubuntu 16.04 boost 1.69 CUDA 9.0 installation
cmake -DCMAKE_BUILD_TYPE=None -DBUILD_GPU=ON -DBUILD_CUDA=ON -DBUILD_gpu_kinfu=ON -DBUILD_gpu_kinfu_ ...
- 剑指Offer 63. 数据流中的中位数(其他)
题目描述 如何得到一个数据流中的中位数?如果从数据流中读出奇数个数值,那么中位数就是所有数值排序之后位于中间的数值.如果从数据流中读出偶数个数值,那么中位数就是所有数值排序之后中间两个数的平均值.我们 ...
- 如何找出当前活动桌面背景图像的位置/路径(Ubuntu 18.04,GNOME)?
启动终端并运行以下命令 $ gsettings get org.gnome.desktop.background picture-uri 显示当前设置为桌面背景图片的完整路径.
- Execute to Parse %: 29.76,数据库硬解析过高,监控告警提示数据库硬解析比例过低
客户反馈,Oracle重启库操作后,监控告警出现pin比例低于25% 根据Oracle体系结构的理解,重启库后,硬解析及buffer命中率肯定有一段时间低. 生成不同时段的AWR报告:不要生成rac ...