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启动监听器报错_JAVA通过JDBC连接Oracle数据库详解【转载】相关推荐

  1. java启动监听器报错_初识 Java-监听器

    使用Listener类 当java  web应用程序在web容器中运行时,在java web应用程序内部会不断发生各种事件,例如web应用的启动,暂停,销毁等.以及web应用中session开始和结束 ...

  2. java启动监听器报错_tomcat启动,监听器错误 Error listenerStart,有人遇到没?

    3# 发表于:2016-08-11 10:51:34  IP:113.206.*.* 控制台报一大堆错误:nested exception is org.springframework.beans.f ...

  3. Java编程 JDBC连接Oracle数据库

    Part1 JDBC JDBC(Java DataBase Connectivity,java数据库连接)是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Jav ...

  4. Java案例:利用JDBC连接Oracle数据库

    Java案例:利用JDBC连接Oracle数据库 一.准备工作 1.启动SQL Developer,设置java.exe路径 2.在Oracle SQL Developer里,新建数据库连接 连接名: ...

  5. idea如何给oracle添加数据_intelij idea下使用java和JDBC连接oracle数据库及简单的SQL操作...

    intelij idea下使用java和JDBC连接oracle数据库及简单的SQL操作 发布时间:2018-07-04 10:09, 浏览次数:2532 , 标签: intelij idea jav ...

  6. JDBC连接Oracle数据库测试

    JDBC连接Oracle数据库测试 package date20180727.dao; import java.sql.Connection; import java.sql.DriverManage ...

  7. jdbc连接oracle数据库

    jdbc连接Oracle数据库的步骤: 1.导入需要的jar包,比如ojdbc6.jar 2.加载驱动.Class.forName("oracle.jdbc.OracleDriver&quo ...

  8. jdbc连接oracle查询数据库,JDBC连接Oracle数据库,并操作数据库,查询表

    JDBC连接Oracle数据库 protected void doPost(HttpServletRequest request, HttpServletResponse response) thro ...

  9. java启动项目报错,org.apache.catalina.lifecycleException..............以及解决方案

    解决方法 像类似的启动项目报错,一般情况都在web.xml里面: 此时,注意 java.lang.IllegalArgumentException: Invalid<url-pattern> ...

最新文章

  1. Spring Cloud - Feign调用问题
  2. php 设置时区_为什么没有 Asia/Beijing 时区?
  3. 12.5K 颗星星的 C++ 教程,带你高速上手现代 C++ !
  4. acwing221 龙哥的问题
  5. Android PullTorefreshScrollview回到顶部
  6. MATLAB函数随笔之计算篇
  7. springboot系列二、springboot项目搭建
  8. 使用valgrind检查内存越界
  9. Windows必备程序 | CleanMyPC安装教程
  10. 迭代法动态生成谢尔宾斯基三角形
  11. vue 加headers_(vue.js)axios interceptors 拦截器中添加headers 属性
  12. 三星平板显示无法连接网络连接服务器,三星p600平板电脑无法连接无线网络该怎么办?...
  13. 淘宝的商品中心和类目体系是怎么设计的 | 极客分享第 16 期
  14. java 导入excel 日期格式转换
  15. exlsx中定义名称步骤_excel定义名称详解
  16. 棠玥寕谈芭蕾:人生应有一热爱
  17. 【分布式事务】内容较多CAP/BASE/2PC/3PC/TCC/Sega等等等等~,一次性捋清楚
  18. Docker - 编译安装nginx镜像
  19. OpenCV imread 图片读取
  20. 各省金融机构存贷款余额、GDP、金融化程度、城镇化率、大专以上人口比重等(2012-2019年)

热门文章

  1. C#如何判断程序调用的exe已结束
  2. C#中Invoke的用法(转)
  3. 获取treeview中当前鼠标所指的节点treenode 。
  4. mysql date string类型_mysql date类型与string转换
  5. java类加载过程_面试官:java类的加载过程
  6. php 旋转图片 并保存,如何在PHP中旋转并保存图像
  7. extjs获取元素name属性值_【ExtJS】各种获取元素组件方法
  8. QFontDatabase: Cannot find font directory
  9. c++11中thread join和detach的区别
  10. osg::PositionAttitudeTransform旋转物体