怎么实现用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的其它应用我会在以后的时间内继续。。。。

相关文章推荐

利用JDBC连接Oracle数据库

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

本地使用Plsql连接远程服务器上oracle!

前提:先关掉客户机和服务器防火墙吧! 1.安装oracle到服务器 2.下载instantclient,并安装 3.拷贝oracle的home下network文件夹到 instanclient下,只保...

Java远程访问Oracle教程

Search...  Connect to Oracle database via JDBC  Print   Email Last Updat...

JDBC连接ORACLE的三种URL格式

使用jdbc连接oracle时url有三种格式格式一: Oracle JDBC Thin using an SID: jdbc:oracle:thin:@host:port:SID Examp...

Java程序使用OCI驱动连接Oracle数据库

推荐:Java数据库编程资料  摘要:配置java web应用使用OCI驱动来访问oracle数据库,如果在tomcat下有多个应用,且每个应用都要访问oracle数据库时的注意项事。Oracle的即...

Java使用数据库连接池连接Oracle数据库

分享Java JDBC技术,使用连接池创建对Oracle数据库的连接

Java通过jdbc远程操控MySQL数据库

注意事项有以下几点: 1,MySQL数据库端要关闭防火墙 2,关于字符集问题要设置好,可以参考以下博客eclipse向MySQL workbench插入中文显示乱码 关于解决workbench无...

oracle的jdbc连接方式:oci和thin

oci和thin是Oracle提供的两套Java访问Oracle数据库方式。 thin是一种瘦客户端的连接方式,即采用这种连接方式不需要安装oracle客户端,只要求classpath中包含jdbc...
  • HQingmu
  • HQingmu
  • 2012年09月05日 15:29
  • 693

关于在Eclipse上与本机上的oracle之间的连接

因为我是第一次进行Java与oracle数据库连接,所以百度了很多东西。而且本机上同时安装了oracle和eclipse,所以省去了很多步骤。 首先,我是用的是thin连接数据库,因此,你得...

远程访问Oracle数据库

  • 2012年11月19日 16:15
  • 762B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:怎么实现用java远程访问oracle数据库?
举报原因:
原因补充:

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