JDBC连接Oracle数据库

都天星泪 发布于 2017/12/10 19:01
阅读 972
收藏 1

public class Jdbc1 {

    public static void main(String[] args) throws ClassNotFoundException, SQLException {
            Class.forName("oracle.jdbc.OracleDriver");
            //System.out.println("OK");
            String url = "jdbc:oracle:thin:@192.168.1.102:1521:orcl";
            String username = "system";
            String password = "orcl";
            Connection conn = DriverManager.getConnection(url, username, password);
            System.out.println(conn.getClass());
    }

}

Exception in thread "main" java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:112)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:146)
    at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:255)
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:387)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:439)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:165)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:35)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:801)
    at java.sql.DriverManager.getConnection(DriverManager.java:664)
    at java.sql.DriverManager.getConnection(DriverManager.java:247)
    at cn.csq.jdbc.Jdbc1.main(Jdbc1.java:15)
一直提示这个异常,网上找了好多方法都不醒啊啊,有大神知道哪里错了吗?我在sqlplus能连接数据库,在PLSQL Developer也能进去

加载中
1
都天星泪

多谢各位大神的解答,问题解决了,是我自己电脑网络问题,解决方法 :

1,以管理员身份打开命令提示符
        2,输入 netsh winsock reset  
        3,重启电脑就ok了

winsock是Windows网络编程接口,winsock工作在应用层,它提供与底层传输协议无关的高层数据传输编程接口 netsh winsock reset 是把它恢复到默认状态
0
红薯
红薯
连接失败啊
都天星泪
求方法,我换了一台电脑完全没问题,难道Eclipse有问题?
0
pang2841641
pang2841641

url打错了,肯定连接不了啊。操,低级错误!

都天星泪
url哪里打错了?我换一台电脑完全没问题啊,刚接触jdbc,菜鸟一个,请指导
0
AlkTTT
AlkTTT

我怎么觉得你加载的驱动包有点怪

oracle.jdbc.driver.OracleDriver

应该是这个吧,你那个用crtl键能点进去吗

都天星泪
回复 @AlkTTT : 可以进去的
AlkTTT
AlkTTT
回复 @都天星泪 : crtl进入这个驱动包,如果能进入,代表你这个驱动包已经添加成功了
都天星泪
加载驱动包没问题的,我也按照你的试过还是不行,你说的crtl键能点进去是什么意思啊?
0
依然菜刀
依然菜刀

1、驱动改为:oracle.jdbc.driver.OracleDriver,代码中的是老版本驱动兼容的驱动

2、把plsql的连接串发出来看一下,看下是不是数据库实例名写错了

3、看下是否是防火墙或者网络的问题。

都天星泪
驱动改了,防火墙关了,网络OK,服务全部启动,监听器没问题,就是不行
0
晓赵赵
晓赵赵

我咋感觉是orecle没有开启服务呢? 服务都开启了吗

都天星泪
服务都开启了,网络也没问题,监听也没问题,数据库实例名也没错
0
都天星泪

帮看下哪里不行,感激不尽

0
AlkTTT
AlkTTT

用cmd先看下你这台电脑的端口是不是1521,netctat -ano

AlkTTT
AlkTTT
回复 @都天星泪 : 我的意思是,你换一个工具,不用PLSQL Developer
都天星泪
回复 @AlkTTT : PLSQL Developer 我换这个工具也没问题啊
AlkTTT
AlkTTT
回复 @都天星泪 : 那端口没有问题,上面的截图里你用的数据库工具是什么,plsql?现在换一个工具试下,navicat
都天星泪
有这个端口,然后呢?
0
梦到一夜暴富
梦到一夜暴富

https://gitee.com/?from=osc-index

OSCHINA
登录后可查看更多优质内容
返回顶部
顶部