连接数据库代码:
public class ConnectionDB {
public static Connection getConn(){
Connection conn=null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","system","admin");
System.out.println("123");
} catch (ClassNotFoundException e) {// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
public static void main(String[] args) {
ConnectionDB cd=new ConnectionDB();
Connection con=cd.getConn();
if(con==null){
System.out.println("连接失败");
}else{
System.out.println("连接成功");
}
}异常:
java.sql.SQLException: Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
The Connection descriptor used by the client was:
localhost:1521:orclat oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:260)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:386)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:413)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:164)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:34)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:752)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at train.dao.ConnectionDB.getConn(ConnectionDB.java:10)
at train.dao.ConnectionDB.main(ConnectionDB.java:38)
连接失败
请高人指点!有点急!在线等!
public class ConnectionDB {
public static Connection getConn(){
Connection conn=null;
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
conn=DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:orcl","system","admin");
System.out.println("123");
} catch (ClassNotFoundException e) {// TODO Auto-generated catch block
e.printStackTrace();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return conn;
}
public static void main(String[] args) {
ConnectionDB cd=new ConnectionDB();
Connection con=cd.getConn();
if(con==null){
System.out.println("连接失败");
}else{
System.out.println("连接成功");
}
}异常:
java.sql.SQLException: Listener refused the connection with the following error:
ORA-12505, TNS:listener does not currently know of SID given in connect descriptor
The Connection descriptor used by the client was:
localhost:1521:orclat oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:260)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:386)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:413)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:164)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:34)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:752)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at train.dao.ConnectionDB.getConn(ConnectionDB.java:10)
at train.dao.ConnectionDB.main(ConnectionDB.java:38)
连接失败
请高人指点!有点急!在线等!
解决方案 »
- 关于Spring3.0.2中用annotation方式声明@Pointcut时的报错解决方案
- 我是初初菜鸟
- oracle 前一天的信息怎么查询啊
- 要搞个p2p的基于UDP的语音聊天是用JMF还是JAVA sound api?
- hibernate事务的问题
- 求一个关于hibernate criteria 时间查询的写法
- WARNING: No request handling method with name 'add' in class [com.zxt.controller
- 我将是这样学习java的!!!
- 为何rollback不了?
- 关于解析XML的问题,急急急
- 有没可能在dao层写hql语句实现注册提交同时添加两张表?
- 请问怎么在linux下使用脚本调用ghost还原linux硬盘(还原系统)
{
}的大括号内加上这个(SID_DESC =
(GLOBAL_DBNAME = ORCL)
(ORACLE_HOME = /app/oracle/oracle/product/10.2.0/db_1)
(SID_NAME = ORCL)
)
然后重启Oracle的监听器。
那台机子与我的机子在实例名,端口,用户名,密码都是一致的
刚刚重新配置了监听,少了一段错误变成了:
java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:111)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:145)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:254)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:386)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:413)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:164)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:34)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:752)
at java.sql.DriverManager.getConnection(DriverManager.java:582)
at java.sql.DriverManager.getConnection(DriverManager.java:185)
at train.dao.ConnectionDB.getConn(ConnectionDB.java:10)
at train.dao.ConnectionDB.main(ConnectionDB.java:38)
连接失败
“是数据库连接数量的问题,12519错误为监听不能提供服务,通常为数据库进程达到上限导致。 可以先执行下 select count(*) from v$process ,看下现在系统有多少连接数,然后再查询 select value from v$parameter where name = 'processes' ,看下oracle设置中设置了多少连接数,一般一个应用都会使用20个,所以如果你开了几个应用的话(web、pl/sql、……)就会出这个问题了,这时只需要执行下alter system set processes = 300 scope = spfile; 就可以了,当然300可以根据实际情况设置。”我试了,系统有21个连接数,而oracle设置了150个连接数,是不是就是这个问题!使用连接池或者其它方法?