Java中通过JDBC远程连接Oracle数据库

时间:2022-02-28 00:00:25

通过jdbc连接数据库,拢共分三步:

第一步:下载一个JDBC的驱动,然后把jar包扔到项目里并add to build path;

第二步:去本地oracle文件夹下找到“TNSNAMES.ORA”文件,打开找到对应数据库的连接字符串,作为jdbc的连接字符串;

Java中通过JDBC远程连接Oracle数据库

第三步:写代码,通过jdbc连接数据库。

从网上找了段代码,做了下修改。以下为查询数据库表中所有字段及字段值类型,遍历数据库表中所有数据(其中xxx均为需要替换的信息):

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.ResultSetMetaData; public class ConnectDB {
public static void main(String[] args) {
connectDB();
} public static void connectDB() {
Connection con = null;
PreparedStatement pre = null;
ResultSet results = null;
ResultSetMetaData resultSetMetaData = null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
System.out.println("开始尝试连接数据库!");
// 必须用oracle文件夹下"tnsnames.ora"配置文件中配置的连接字符串进行远程连接数据库
String url = "jdbc:oracle:" + "thin:@(DESCRIPTION =" + "(ADDRESS_LIST ="
+ "(ADDRESS = (PROTOCOL = TCP)(HOST = xxx)(PORT = xxx))" + ")" + "(CONNECT_DATA ="
+ "(SERVICE_NAME = xxx)" + ")" + ")";
String user = "xxx";
String password = "xxx";
con = DriverManager.getConnection(url, user, password);
System.out.println("连接成功!");
String sql = "select * from xxx";
pre = con.prepareStatement(sql);
System.out.println("开始执行SQL语句!");
results = pre.executeQuery();
resultSetMetaData = results.getMetaData();
int columnCount = resultSetMetaData.getColumnCount();
// 获取数据库表所有字段名及字段值类型
for (int i = 1; i <= columnCount; i++) {
System.out.println(resultSetMetaData.getColumnName(i) + ":" + resultSetMetaData.getColumnTypeName(i));
}
while (results.next()) {
for (int i = 1; i <= columnCount; i++) {
System.out.print(results.getString(i)+"\t\t");
}
System.out.println();
} } catch (Exception e) {
e.printStackTrace();
} finally {
try {
if (results != null)
results.close();
if (pre != null)
pre.close();
if (con != null)
con.close();
System.out.println("数据库连接已关闭!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
}

Java中通过JDBC远程连接Oracle数据库的更多相关文章

  1. &period;net远程连接oracle数据库不用安装oracle客户端

    asp.net远程连接oracle数据库不用安装oracle客户端的方法下面是asp.net连接远程Oracle数据库服务器步骤: 1.asp.net连接oracle服务器需要添加Sytem.Data ...

  2. &period;net远程连接oracle数据库不用安装oracle客户端的方法

    .net远程连接oracle数据库不用安装oracle客户端的方法步骤: 1.添加Sytem.Data.OracleClient命名空间. 2.连接时需要ConnectionString字符串,出现在 ...

  3. PL&sol;SQL Developer 远程连接Oracle数据库

    PL/SQL Developer 远程连接Oracle数据库 网上搜了很多方法,这个可行! 1.    配置服务器tnsnames.ora文件,如果本机上没有安装oracle,可以从安装了oracle ...

  4. 转:不用安装Oracle客户端,远程连接Oracle数据库

    转摘自: http://blog.sina.com.cn/s/blog_90b20fe70101az2z.html Oracle数据库安装过程较为繁琐,而且卸载更加麻烦,如果卸载不干净,下次安装Ora ...

  5. Asp&period;Net 远程连接Oracle数据库

    Asp.Net 远程连接Oracle数据库 首先从微软停止.Net FrameWork支持Oracle数据库的研发,转为第三方提供说起,微软是很有实力的公司,他在桌面领域令其他对手望其项背,产品战线也 ...

  6. 远程连接Oracle数据库

    ylbtech-Oracle:远程连接Oracle数据库  所谓远程连接Oracle数据库,是指Oracle数据库服务器和Oracle客户端分别安装在2台电脑上,我们使用Oracle客户端来连接在另一 ...

  7. jmeter中通过jdbc方式连接mysql数据库的配置参考

    jmeter中通过jdbc方式连接mysql数据库的配置参考: Database URL=jdbc:mysql://ip:port/dbname?useUnicode=true&allowMu ...

  8. PLSQl远程连接oracle数据库

    PLSQL远程连接Oracle 10G 1.在安装ORACLE服务器的机器上搜索下列文件, ORACLE 服务器上的文件 oci.dll     ocijdbc10.dll     ociw32.dl ...

  9. PLSQL Developer 远程连接Oracle数据库

    下载.安装.激活PLSQL Developer,本例使用 PLSQL Developer 13 (64 bit). 下载Oracle即时客户端 Instant Client,本例使用11gR2 链接: ...

随机推荐

  1. GetKeyboardType获取键盘类型&lpar;通过键盘可初步判断用户使用的是台式电脑还是笔记本电脑&rpar;

    函数功能:该函数获取系统当前键盘的信息. int WINAPI GetKeyboardType( __in int nTypeFlag ); 参数说明:nTypeFlag:指定要获取的键盘信息的类型, ...

  2. Struts框架——(二)Struts原理with登录实例

    二. Struts基本工作流程 假设现在有以下情景: 用户正在浏览一个用STRUTS的技术构建的网站主页,主页上有个登陆表单,用户填好登陆名和密码,单击"登陆"按钮,就激活了以下一 ...

  3. A Study of WebRTC Security

    转自:http://webrtc-security.github.io/ A Study of WebRTC Security Abstract Web Real-Time Communication ...

  4. LIS&lpar;nlogn&rpar; POJ 3903 Stock Exchange

    题目传送门 题意:LIS最长递增子序列 O(nlogn) 分析:设当前最长递增子序列为len,考虑元素a[i]; 若d[len]<a[i],则len++,并使d[len]=a[i]; 否则,在d ...

  5. Unity bundle的制作和使用

    原地址:http://unity3d.9ria.com/?p=2863 Unity有个很好的功能,大致是很多专注于PC的engine没有提供的(因为没有必要),就是能加载主包外的资源,这个主包外的资源 ...

  6. SSH 服务启动时出现如下错误:fatal&colon; Cannot bind any address

    注意:本文相关配置及说明已在 CentOS 6.5 64 位操作系统中进行过测试.其它类型及版本操作系统配置可能有所差异,具体情况请参阅相应操作系统官方文档. 问题描述 云服务器 ECS (Elast ...

  7. memset memcpy函数

    memset 函数 1.其头文件为: #include<memory> 或者#include<string> 2.原型    看清是对每个字节,不是其类型 void *mems ...

  8. Android 天天爱消除辅助

    简介 <天天爱消除>是一款移植于手游的消除类益智游戏,该游戏只有通过手机登录QQ跟微信才能进行,这样一来这款游戏必然会大红大紫. 功能 开发Android自动化触屏事件,录制操作脚本,实现 ...

  9. static关键字特点

    目录 static关键字特点 静态代码块 static修饰与非static修饰的区别 static关键字特点 随着类的加载而加载 static修饰的变量和方法都会放在方法区中静态区,是属于类的. 静态 ...

  10. 15&period; 3Sum &lpar;JAVA&rpar;

    Given an array nums of n integers, are there elements a, b, cin nums such that a + b + c = 0? Find a ...