JAVA通过JDBC连接Oracle数据库详解

(2011-03-15 00:10:03)

转载http://blog.sina.com.cn/s/blog_61da86dd0100q27w.html

Java连接Oracle步骤:

1.注册加载驱动

驱动名:DRIVER="oracle.jdbc.driver.OracleDriver";
Class.forName("驱动类名");

2.获得连接

数据库地址: URL="jdbc:oracle:thin:@127.0.0.1:1521:ORCL";
Connection conn = DriverManager.getConnection(数据库地址,用户名,密码);
System.out.println("连接成功");

3.进行对数据库的操作

4.依次关闭连接
conn.close();

值得注意的是:

1.在此过程中需要加载连接Oracle的驱动class12.jar
2、将此jar包复制到java项目中,并且添加到“构建路径”。
3、展开jar包,找到驱动类的名称,并复制:oracle.jdbc.driver.OracleDriver
4、数据库根据固定格式写:jdbc:oracle:thin:@数据库IP地址:1521:全局数据库名
说明:
jdbc:oracle:thin:表示协议,相当于上网用的“http:”。
数据库IP地址:用ipconfig可以查到。目前教师机查到的是:192.168.1.199。
1521:Oracle数据库的端口,通常不用修改。
全局数据库名:通常在安装时指定,默认为:orcl。
即在程序中书写的地址为:jdbc:oracle:thin:@192.168.1.199:1521:orcl
6、启动时报错:Io 异常: The Network Adapter could not establish the connection
分析一:
·要连接到数据库,首先要保证Oracle服务要启动。所以先启动:OracleServiceORCL。
·注意,客户端编写java的电脑,不需要启动本机的任何Oracle服务。
运行,相同的错误仍然存在。
分析二:
·要访问所有的网络程序,网络程序都必须运行一个在某个端口监听的程序。java程序要连接到Oracle,必须先连接到监听器。对Oracle来讲,这就是监听服务:OracleoracleTNSListener。Oracle10G的监听服务名称不同,但仍然是以“TNSListener”结尾的名称。
7、如果监听服务能够正常启动,则java程序也可以连接到Oracle数据库了。

常见问题:启动监听服务报错,或者启动以后没有报错,但是单击“刷新”发现实际上并没有启动。如何解决?
分析:
Oracle的监听器的信息对应的IP地址不正确,必须将这个IP地址改为本机的IP地址。
步骤:
·找到Oracle的菜单,再找到“net manager”程序→Oracle NET配置→本地→监听程序→将“主机”右边的文本框修改为本机的IP地址
·最后一定要保存修改,步骤:单击菜单“文件”→“保存”网络配置。
·再次启动Oracle监听服务,并刷新,看是否启动成功。
·如果监听服务启动成功,则jdbc在正常情况下也能够连接到Oracle了。

·作为经验,如果出现了“ TNS:listener does not currently know of SID given in connect descriptor”。则只需要再将OracleServiceORCL服务重新启动一下。
·作为经验,如果使用“localhost”连接不上,则使用本机实际的IP地址,通过ipconfig得到。
最后,应该先启动Oracle监听器,再启动Oracle服务。

附:端口的理解及常用端口号

端口号:我。同理,为了区别服务器上每个网络监听程序,每个监听器都要分配一个唯一的端口号。端口号,相当于就是“网络程序的身份ID”。

常用端口号:SQLServer:1433;Oracle:1521,Web服务器:80( http://g.cn,其实是 http://g.cn:80/),Tomcat:8080

JAVA通过JDBC连接Oracle数据库详解【转载】的更多相关文章

  1. JAVA采用JDBC连接操作数据库详解

    JDBC连接数据库概述 一.JDBC基础知识 JDBC(Java Data Base Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供 ...

  2. java中JDBC连接Oracle数据库

    package com.xxxx.lunwen.test;import java.sql.*;public class DBUtil { static { try { // 加载Oracle驱动程序 ...

  3. Java使用JDBC连接Oracle数据库

    import java.sql.Connection; import java.sql.Driver; import java.sql.DriverManager; /** * @author liu ...

  4. jdbc连接oracle数据库

    /*** 通过改变配置文件来连接不同数据库*/package com.xykj.jdbc; import static org.junit.Assert.*; import java.io.Input ...

  5. JDBC连接Oracle数据库的问题

    场景:最近做一个java web项目,使用jdbc连接Oracle数据库,遇到了两个问题. 问题1:jdbc连接不上Ubuntu Oracle服务器? 后来发现这个问题的原因是由于连接字符串写错了,修 ...

  6. JDBC 连接Oracle 数据库,JDBC 连接Mysql 数据库

    首先是JDBC 连接Oracle  数据库 package com.util; import com.pojo.UserInfo; import java.sql.*; public class DB ...

  7. ava基础MySQL存储过程 Java基础 JDBC连接MySQL数据库

    1.MySQL存储过程   1.1.什么是存储过程 带有逻辑的sql语句:带有流程控制语句(if  while)等等 的sql语句   1.2.存储过程的特点 1)执行效率非常快,存储过程是数据库的服 ...

  8. java用JDBC连接MySQL数据库的详细知识点

    想实现java用JDBC连接MySQL数据库.需要有几个准备工作: 1.下载Connector/J的库文件,下载Connector/J的官网地址:http://www.mysql.com/downlo ...

  9. jdbc连接oracle数据库问题

    下面是JDBC连接oracle数据库流程: String dbURL = "jdbc:oracle:thin:@url:1521:service_name"; String use ...

随机推荐

  1. windows 10占用cpu和内存过高

    自从安装了windows 10,开机之后cpu和内存一直占用很高,尤其是system进程,一直占cpu在13%左右,上网查到一个解决方式,如下: cpu瞬间变为1%

  2. 2018-2019-1 20189215《Linux内核原理与分析》第二周作业

    本周学习了<庖丁解牛>第1章,以及<Linux内核设计与实现>第1.2.18章.通过视频和实验,学会了反汇编一个简单的C程序,也学习了Linux内核调试的一些小技巧和print ...

  3. HTTP-java模拟Get请求小栗子

    import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import ...

  4. .Net频繁访问数据库的优化探究(一)

    知识点:DataTable.Linq.lamda表达式.Cache 场景:查询部门的所有员工和管理员,并分配相应的权限 实现过程一般为:查询部门,遍历部门(查询员工.分配权限.查询管理员.分配权限) ...

  5. 学习maven,看思维导图就够了

    一直在用 Mindjet MindManager和xmind 做思维导图.以前在用思维导图写读书笔记时,总是想要事无巨细地写清楚每个知识点,现在想来是事倍功半.思维导图应该是一个帮助我们梳理知识点.理 ...

  6. mysql之innodb的锁分类介绍

    一.innodb行锁分类 record lock:记录锁,也就是仅仅锁着单独的一行 gap lock:区间锁,仅仅锁住一个区间(注意这里的区间都是开区间,也就是不包括边界值. next-key loc ...

  7. How to have matlab tic toc in C++?

    Reprinted form: https://stackoverflow.com/questions/13485266/how-to-have-matlab-tic-toc-in-c/1348558 ...

  8. orm框架的使用

    Install npm install orm Node.js Version Support Supported: 0.12 - 6.0 + Tests are run on Travis CI I ...

  9. python学习笔记(四)---python不能输出中文问题

    只需要在所有代码的最前面加上:#coding:utf-8 即可

  10. Git分支管理及合并

    Git分支管理   建立分支 git branch [name]   切换到分支 git checkout [name]   查看有哪些分支 git branch   比较分支 git diff [b ...