jdbc/ojdbc连oracle的三种方式(转)
文章转自:http://blog.itpub.net/22664653/viewspace-1383092/
前言
本文是一篇学习笔记,学习如何通过java jdbc /ojdbc 连接oracle的几种方式。
一 使用方法
方法一:使用service_name 连接oracle
jdbc:oracle:thin:@//<host>:<port>/<service_name>例如: jdbc:oracle:thin:@//10.10.10.1:1521/TDB
注意这里的格式,@后面有//, 这是与使用SID的主要区别。
对于集群来说,每个节点的SID 是不一样的,但是SERVICE_NAME 确可以包含所有节点。
方法二: 使用SID 连接oracle
jdbc:oracle:thin:@<host>:<port>:<SID>Example: jdbc:oracle:thin:@10.10.10.1:1521:testdb1
注意 该方法已经不做推荐,oracle 官方推荐使用service_name
方法三:使用tnsname 连接oracle
jdbc:oracle:thin:@<TNSName>Example: jdbc:oracle:thin:@TESTDB
二 源代码
import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class testDB {public static final String DBDRIVER = "oracle.jdbc.driver.OracleDriver";# public static final String DBURL = "jdbc:oracle:thin:@127.0.0.1:1521/testdb1"; //sid 格式 testdb1是sid# public static final String DBURL = "jdbc:oracle:thin:@//127.0.0.1:1521/TDB"; //servicename TDB是service_namepublic static final String DBUSER = "test\";public static final String DBPASSWORD = \"xxx\";public static final String DBURL = \"jdbc:oracle:thin:@TESTDB\"; //tnsname 格式public static void main(String[] args) throws Exception{Connection con = null;PreparedStatement ps = null;ResultSet rs = null;String strSQL = \"select count(*) from tsa_dim_deal\";# System.setProperty(\"oracle.net.tns_admin\", \"/home/admin/oracle\");//使用tnsname 方法的时候 需要制定tnsname.ora所在的文件夹绝对路径Class.forName(DBDRIVER).newInstance();con = DriverManager.getConnection(DBURL,DBUSER,DBPASSWORD);ps = con.prepareStatement(strSQL);rs = ps.executeQuery();while(rs.next()){System.out.println(\"num:\"+rs.getString(1));}rs.close();ps.close();con.close();}}
附录:
[qilong.yangql@rac1 oracle]$ more tnsnames.oratestdb=(DESCRIPTION =(FAILOVER = ON)(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.1)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.2)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.3)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.4)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.5)(PORT = 1521))(ADDRESS = (PROTOCOL = TCP)(HOST = 10.10.10.6)(PORT = 1521)))(CONNECT_DATA =(SERVER = DEDICATED)(SERVICE_NAME = tdb)))
注意 本文里面 service_name tdb 和tnsname (testdb) 故意设置的不一样.
三 参考:
http://razorsql.com/docs/help_oracle.html
jdbc/ojdbc连oracle的三种方式(转)的更多相关文章
- java jdbc/ojdbc 链接oracle的三种方式
方法一:使用service_name 连接oracle jdbc:oracle:thin:@//:/<service_name> 例如: jdbc:oracle:thin:@//10.1 ...
- JDBC 创建连接对象的三种方式 、 properties文件的建立、编辑和信息获取
创建连接对象的三种方式 //第一种方式 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/ ...
- JDBC 创建连接对象的三种方式 、 properties文件的建立、编辑和信息获取
创建连接对象的三种方式 //第一种方式 Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/ ...
- 【Oracle】三种方式查看SQL语句的执行计划
查看执行计划的方式有三种: EXPLAIN PLAN .V$SQL_PLAN .SQL*PLUS AUTOTRACE 1.EXPLAIN PLAN: 显示执行相应语句时可以使用的理论计划 读取执行计划 ...
- jdbc 获取connection 对象的三种方式
获取数据库连接方法一:驱动实现类 //创建mysql的Driver对象 Driver driver=new com.mysql.jdbc.Driver(); //jdbc url 定位一个数据库: S ...
- Oracle数据库三种备份方案
Oracle数据库有三种标准的备份方法,它们分别是导出/导入(EXP/IMP).热备份和冷备份.导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一. 导出/导入(Export/Import) 利用 ...
- Oracle数据库三种标准的备份方法
Oracle数据库的三种标准的备份方法: 1.导出/导入(EXP/IMP). 2.热备份. 3.冷备份. 注释:导出备件是一种逻辑备份,冷备份和热备份是物理备份. 一.导出/导入(Export/Imp ...
- jdbc连接oracle的三种方法
jdbc连接oracle的三种方法 使用service_name,配置方式:jdbc:oracle:thin:@//<host>:<port>/<service_name ...
- JDBC的批处理操作三种方式 pstmt.addBatch()
package lavasoft.jdbctest; import lavasoft.common.DBToolkit; import java.sql.Connection; import java ...
随机推荐
- BZOJ 1834 【ZJOI2010】 network 网络扩容
Description 给定一张有向图,每条边都有一个容量C和一个扩容费用W.这里扩容费用是指将容量扩大1所需的费用.求: 1. 在不扩容的情况下,1到N的最大流: 2. 将1到N的最大流增加K所需的 ...
- codevs 2606 约数和问题
题目描述 Description Smart最近沉迷于对约数的研究中. 对于一个数X,函数f(X)表示X所有约数的和.例如:f(6)=1+2+3+6=12.对于一个X,Smart可以很快的算出f(X) ...
- 安装 SQL SERVER 2008 必须使用 "角色管理工具" 错误 的 解决方案 (转)
刚在服务器(Win2008)上安装SqlServer2008的时候出现了这么一个报错——必须使用“角色管理工具”安装或配置Microsoft .NET Framework 3.5 SP1.一开始以为是 ...
- web—第四章css&第五章
web—第四章css&第五章 终于迎接等待已久的CSS,在没学这个之前,我们只会用一点img,查一点小图片,或者是用style改一下颜色,而且比较麻烦.现在多了个css在文件夹在创建一个cs ...
- Oracle XE http端口8080的修改
Oracle Express Edition(XE)默认的http端口是8080,这跟JBoss/Tomcat的默认端口相同,导致Jboss启动冲突. 修改办法: 1. 以dba身份登录XE 2. 执 ...
- 字符串匹配(hash算法)
hash函数对大家来说不陌生吧 ? 而这次我们就用hash函数来实现字符串匹配. 首先我们会想一下二进制数. 对于任意一个二进制数,我们将它化为10进制的数的方法如下(以二进制数1101101为例): ...
- 解决Package illuminate/html is abandoned, you should avoid using it. Use laravelcollective/html instead.问题
解决步骤: 1.分析问题是因为laravel5.1不赞成使用illuminate/html而推荐使用laravelcollective/html包,所以我们利用composer命令移除illumina ...
- js的offsetWidth,offsetHeight,offsetLeft,offsetTop
js的offsetWidth,offsetHeight,offsetLeft,offsetTop
- [BZOJ 2819]NIM(dfs序维护树上xor值)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=2819 分析: 树上的nim游戏,关键就是要判断树上的一条链的异或值是否为0 这个题目有 ...
- [BZOJ1924][Sdoi2010]所托门王的宝藏(缩点+DP)
题目:http://www.lydsy.com:808/JudgeOnline/problem.php?id=1924 分析: 首先把传送门作为点建图 这个数据很弱的,没有那种卡你的. 把每行的情况存 ...