怎么实现用java远程访问oracle数据库?

转载 2016年08月30日 10:40:53
1、新建JAVA项目时在库中添加“%oracle_home%jdbc.lib.classes.zip”也可在Eclipse->项目->属性->Java构建路径->库添加“%oracle_home%jdbc.lib.classes.zip”;


2、 import java.sql.DriverManager;
      import java.sql.ResultSet;
      import java.sql.SQLException;
      import java.sql.Statement;
      import java.sql.Connection;


3、

public class my_jdbc {


       public static void main(String[] args) throws SQLException, ClassNotFoundException
       {


           String sql = "select * from emp";
           Class.forName("oracle.jdbc.driver.OracleDriver"); //加载驱动程序




           DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver());//实例化驱动程序类




           String url = "jdbc:oracle:thin:@10.0.0.244:1521:orcl2 ";//驱动程序名:@主机名/IP:端口号:数据库实例名




           String userName = "SCOTT";
           String passWord = "tiger";




           Connection conn = DriverManager.getConnection(url, userName, passWord);




           Statement stm = conn.createStatement();




           ResultSet rs = stm.executeQuery(sql);




           while (rs.next())
           {   
               String a=rs.getString(3);
              
              
               System.out.print(a+"/t");
              System.out.println( rs.getDate(5).toString());
           }
      }
 }


 


4、


  DriverManager 类是 JDBC 的管理层,作用于用户和驱动程序之间。它跟踪可用的驱动程序,并在数据库和相应驱动程序之间建立连接。另外,DriverManager 类也处理诸如驱动程序登录时间限制及登录和跟踪消息的显示等事务。
一般需要使用的唯一方法是 DriverManager.getConnection。建立与数据库的连接。JDBC 允许用户调用 DriverManager 的方法 getDriver、getDrivers 和 registerDriver 及 Driver 的方法 connect。
  DriverManager 类包含一列 Driver 类,它们已通过调用方法 DriverManager.registerDriver 对自己进行注册。所有 Driver 类都必须包含有一个静态部分。用于创建该类的实例,然后在加载该实例时 DriverManager 类进行注册。这样,用户正常情况下将不会直接调用 DriverManager.registerDriver;而是在加载驱动程序时由驱动程序自动调用。
加载 Driver 类,然后自动在 DriverManager 中注册的方式有两种: 


  通过调用方法 Class.forName。这将显式地加载驱动程序类。由于这与外部设置无关,因此推荐使用这种加载驱动程序的方法。以下代码加载类 acme.db.Driver:Class.forName("acme.db.Driver"); 


  如果将 acme.db.Driver 编写为加载时创建实例,并调用以该实例为参数的 DriverManager.registerDriver(),则它在 DriverManager 的驱动程序列表中,并可用于创建连接。 


  通过将驱动程序添加到 java.lang.System 的属性 jdbc.drivers 中。这是一个由 DriverManager 类加载的驱动程序类名的列表,由冒号分隔:初始化 DriverManager 类时,它搜索系统属性 jdbc.drivers,如果用户已输入了一个或多个驱动程序,则 DriverManager 类将试图加载它们。


  对 DriverManager 方法的第一次调用将自动加载这些驱动程序类。 


  注意:加载驱动程序的第二种方法需要持久的预设环境。如果对这一点不能保证,则调用方法 Class.forName 显式地加载每个驱动程序就显得更为安全。这也是引入特定驱动程序的方法,因为一旦 DriverManager 类被初始化,它将不再检查 jdbc.drivers 属性列表。 


  在以上两种情况中,新加载的 Driver 类都要通过调用 DriverManager.registerDriver 类进行自我注册。如上所述,加载类时将自动执行这一过程。 


  由于安全方面的原因,JDBC 管理层将跟踪哪个类加载器提供哪个驱动程序。这样,当 DriverManager 类打开连接时,它仅使用本地文件系统或与发出连接请求的代码相同的类加载器提供的驱动程序。


  加载 Driver 类并在 DriverManager 类中注册后,它们即可用来与数据库建立连接。当调用 DriverManager.getConnection 方法发出连接请求时,DriverManager 将检查每个驱动程序,查看它是否可以建立连接。 
  有时可能有多个 JDBC 驱动程序可以与给定的 URL 连接。例如,与给定远程数据库连接时,可以使用 JDBC-ODBC 桥驱动程序、JDBC 到通用网络协议驱动程序或数据库厂商提供的驱动程序。在这种情况下,测试驱动程序的顺序至关重要,因为 DriverManager 将使用它所找到的第一个可以成功连接到给定 URL 的驱动程序。 


  首先 DriverManager 试图按注册的顺序使用每个驱动程序(jdbc.drivers 中列出的驱动程序总是先注册)。它将跳过代码不可信任的驱动程序,除非加载它们的源与试图打开连接的代码的源相同。 


  它通过轮流在每个驱动程序上调用方法 Driver.connect,并向它们传递用户开始传递给方法 DriverManager.getConnection 的 URL 来对驱动程序进行测试,然后连接第一个认出该 URL 的驱动程序。 


  这种方法初看起来效率不高,但由于不可能同时加载数十个驱动程序,因此每次连接实际只需几个过程调用和字符串比较。 


  以下代码是通常情况下用驱动程序(例如 JDBC-ODBC 桥驱动程序)建立连接所需所有步骤的示例: 


  Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); //加载驱动程序 


  String url = "jdbc:odbc:fred"; 


  DriverManager.getConnection(url, "userID", "passwd");


5、如果使用的是ORACLE的客户端那么在第一步引用的库为客户端目录下的“jdbc/lib/classes.zip”就可以了。


对于JDBC的其它应用我会在以后的时间内继续。。。。

Java远程访问Oracle教程

Search...  Connect to Oracle database via JDBC  Print   Email Last Updat...
  • dotphoenix
  • dotphoenix
  • 2014年05月10日 11:39
  • 3652

java 连接到远程mysql数据库

首先加载mm.mysql2.0.4-bin.jar驱动,并把其加入classpath,注意一定要打开远程mysql的你的主机的访问权限然后编写如下代码          String name="or...
  • rkind
  • rkind
  • 2005年06月06日 10:02
  • 9434

利用JDBC连接Oracle数据库

JDBC是Sun公司制定的一个可以用Java语言连接数据库的技术。 一、JDBC基础知识 JDBC(Java Data Base Connectivity,...
  • wahaha1_
  • wahaha1_
  • 2013年01月17日 10:53
  • 118151

Java程序实现oracle远程数据库的备份和恢复

最近项目到了收尾的阶段,为了使我们的系统功能更加完成,也为了使客户更加安心,决定添加一个oracle备份和还原的功能。现做一下分享。...
  • u013046597
  • u013046597
  • 2017年04月17日 10:59
  • 2374

Oracle如何连接远程数据库

Oracle如何连接远程数据库   配置好相关的文件就可以,一般是tnsname.ora文件。 一般oracle10g的文件所在目录为:C:\oracle\product\10.2.0\db_1...
  • GaraMaps
  • GaraMaps
  • 2016年09月13日 21:57
  • 17476

Linux下安装Oracle客户端远程访问Oracle数据库

说明: 操作系统: CentOS 5.8最小化安装 IP地址:192.168.21.150 Oracle数据库服务器IP:192.168.0.128 数据库版本:Oracle 11gR2 ...
  • chun8416
  • chun8416
  • 2015年12月31日 13:50
  • 2196

使用Navicat远程连接oracle数据库

在阅读这篇文章之前,确保oracle监听服务已经启动,可以被远程连接。 1.下载Navica安装,32位机器安装32位,64位机器安装64位,网上有破解版的,抛出一个链接。。 http://downl...
  • yy417168602
  • yy417168602
  • 2017年04月17日 20:53
  • 1023

关于Android连接远程数据库(mysql、oracle)

前提:假设远程有一个oracle的数据库,并且有一个已经连接(JDBC操作)了该DB的server(AndroidServer),IP为:http://192.168.0.12:8080/Androi...
  • livia1234
  • livia1234
  • 2014年07月17日 15:43
  • 1272

使用Navicat远程连接Oracle

下载地址:http://download.csdn.net/detail/lxd8731247769/9720507
  • lxd8731247769
  • lxd8731247769
  • 2016年12月26日 09:39
  • 3016

ubuntu下使用sql远程连接oracle数据库

在 http://www.oracle.com/technetwork/topics/linuxsoft-082809.html 中下载下列文件: instantclient-basic-lin...
  • city_of_the_sky
  • city_of_the_sky
  • 2015年04月09日 10:39
  • 1747
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:怎么实现用java远程访问oracle数据库?
举报原因:
原因补充:

(最多只允许输入30个字)