第一個java.lang.ClassNotFoundException: oracle.jdbc.driver.OracleDriver是沒有導入ojdbc[x].ja文件。
第二個java.sql.SQLException: Listener refused the connection with the following error: 是你數據源中url配置有問題。如下:
請打開F:\app\Admin_yfdsou\product\11.2.0\dbhome_1\NETWORK\ADMIN
java連接oracle示例代碼:
package org.lanqiao.test; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.Statement; public class ConnTest { public Connection conn=null; //數據庫連接類 public Statement stmt=null; //執行sql public ResultSet rs=null; //保存查詢結果 //oracle private static String dbDriver="oracle.jdbc.driver.OracleDriver"; private static String dbUrl="jdbc:oracle:thin:@127.0.0.1:1521:orcl"; //mysql5.7以下 // private static String dbDriver="com.mysql.jdbc.Driver"; // private static String dbUrl="jdbc:mysql://127.0.0.1:3306/mybatis"; private static String dbUser="scott"; private static String dbPwd="3333"; //連接數據庫 public static Connection getConnection(){ Connection conn=null; try{ Class.forName(dbDriver); //加載驅動 conn=DriverManager.getConnection(dbUrl, dbUser, dbPwd); }catch(Exception e){ e.printStackTrace(); } if(conn!=null){ System.out.println("數據庫連接success"); }else { System.err.println("警告:數據庫連接失敗"); } return conn; } //執行查詢select public ResultSet doQuery(String sql){ try{ conn=ConnTest.getConnection(); stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); rs=stmt.executeQuery(sql); //執行select }catch(Exception e){ e.printStackTrace(); } return rs; } //執行新增、修改、刪除insert update delete public int doUpdate(String sql){ int result=0; try{ conn=ConnTest.getConnection(); stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY); result=stmt.executeUpdate(sql); }catch(Exception e){ e.printStackTrace(); } return result; } //關閉數據庫連接 public void closeConnection(){ //先關閉結果集rs try{ if(rs!=null){ rs.close(); } }catch(Exception e){ e.printStackTrace(); } //再關閉Statement try{ if(stmt!=null){ stmt.close(); } }catch(Exception e){ e.printStackTrace(); } //最后關閉connection try{ if(conn!=null){ conn.close(); } }catch(Exception e){ e.printStackTrace(); } } public static void main(String[] args){ ConnTest connDB=new ConnTest(); connDB.getConnection(); String sql="Insert into scott.LANQIAO_INFOS values(10,'sz',1,1,1,1)"; int result=connDB.doUpdate(sql); if(result>0) { System.out.println("insert ok"); } } }