JAVA使用JDBC连接ORACLE数据库
前言
本文使用的是Oracle 11g版本,Java版本jdk1.8,JDBC 驱动包 ojdbc6.jar 连接Oracle 数据库 。
一、准备工作
需要把驱动包 ojdbc6.jar 添加到项目,创建个Java类在main方法中编写。
二、使用步骤
1.注册驱动
代码如下(示例):
//声明连接对象、执行sql对象、结果集对象
Connection conn = null;
PreparedStatement pstat = null;
ResultSet rs = null;
//注册驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
2.编辑连接信息和获取连接对象
代码如下(示例):
//获取连接数据库对象
String url = "jdbc:oracle:thin:@localhost:1521:orcl";//@ip地址:端口号:数据库名
String name = "SCOTT";//用户名
String pwd = "*****";//密码
//DriverManage初始化时会扫描到注册的Driver实例
conn = DriverManager.getConnection(url,name,pwd);
3.定义SQL和获取执行SQL对象
代码如下(示例):
//定义要执行的sql
String sql = "SELECT ENAME,JOB FROM SCOTT.EMP";
//获取执行sql对象
pstat = conn.prepareStatement(sql);
4.执行SQL
代码如下(示例):
//执行SQL并返回结果集查看
rs = pstat.executeQuery();
while(rs.next()){
System.out.println("名字:"+ rs.getString(1) + "职称:" + rs.getString(2));
}
5.关闭资源
代码如下(示例):
//关闭资源
finally {
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(pstat != null){
try {
pstat.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
总结
以上就是连接Oracle数据库的基本内容。
以下是完整案例:
package com.jdbc;
import java.sql.*;
/**
* 连接Oracle数据库
*/
public class JdbcTest {
public static void main(String[] args) {
//声明连接对象、执行sql对象、结果集对象
Connection conn = null;
PreparedStatement pstat = null;
ResultSet rs = null;
//添加jar驱动 ojdbc6.jar
try{
//注册驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
//获取连接数据库对象
String url = "jdbc:oracle:thin:@localhost:1521:orcl";
String name = "SCOTT";
String pwd = "scott";
//DriverManage初始化时会扫描到注册的Driver实例
conn = DriverManager.getConnection(url,name,pwd);
System.out.println("连接成功");
//定义要执行的sql
String sql = "SELECT ENAME,JOB FROM SCOTT.EMP";
//获取执行sql对象
pstat = conn.prepareStatement(sql);
//执行SQL并返回结果集
rs = pstat.executeQuery();
System.out.println("执行成功");
while(rs.next()){
System.out.println("名字:"+ rs.getString(1) + "职称:" + rs.getString(2));
}
}catch (ClassNotFoundException e){
e.printStackTrace();
}catch (SQLException e){
e.printStackTrace();
}finally {
if(rs != null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(pstat != null){
try {
pstat.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if(conn != null){
try {
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}
}