当前位置: 代码迷 >> J2EE >> 使用数据库连接池遇到Oracle连接不上解决思路
  详细解决方案

使用数据库连接池遇到Oracle连接不上解决思路

热度:165   发布时间:2016-04-17 23:36:22.0
使用数据库连接池遇到Oracle连接不上
我使用sqlplus和PLSQLDeveloper连接本地数据库都没有问题,但是使用JDBC就连接不上了,不知道哪里问题。请懂的人指教下,感激不尽!

public class ConnectionFactory {
private static BasicDataSource bds;
private static String driverClassName = "oracle.jdbc.driver.OracleDriver";
private static String url = "jdbc:oracle:thin:@localhost:1521:orcl";
private static String username = "fcs";
private static String password = "123";
private ConnectionFactory(){

}
public static BasicDataSource getBs(){
if(null == bds){
bds = new BasicDataSource();
bds.setDriverClassName(driverClassName);
bds.setUrl(url);
bds.setUsername(username);
bds.setPassword(password);
bds.setMaxActive(10);
}
return bds;
}
public static void main(String[] args) {
try {
System.out.println(ConnectionFactory.getBs().getConnection().isClosed());
} catch (SQLException e) {
e.printStackTrace();
}
}
}


报错
org.apache.commons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Io exception: The Network Adapter could not establish the connection)
at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1549)
at org.apache.commons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1388)
at org.apache.commons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:1044)
at com.wistron.DB.ConnectionFactory.main(ConnectionFactory.java:30)
Caused by: java.sql.SQLException: Io exception: The Network Adapter could not establish the connection
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:134)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:179)
at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:334)
at oracle.jdbc.ttc7.TTC7Protocol.handleIOException(TTC7Protocol.java:3678)
at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:352)
at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:365)
at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:547)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:347)
at org.apache.commons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38)
at org.apache.commons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:582)
at org.apache.commons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1556)
at org.apache.commons.dbcp.BasicDataSource.createPoolableConnectionFactory(BasicDataSource.java:1545)
... 3 more
------解决思路----------------------
把listener.ora贴出来看看
------解决思路----------------------
HOST改下localhost
------解决思路----------------------
关闭防火墙试试
  相关解决方案