2016-04-15 155 views
0

我想連接oracle數據庫到netbeans。我遵循https://netbeans.org/kb/docs/ide/oracle-db.html中給出的指示。 我完成了給定網站的所有步驟。 但是當我嘗試通過使用servlet頁面連接數據庫時出現錯誤。netbeans連接oracle數據庫

誤差如下,

Error Occured : 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:XE [kavindu on KAVINDU]

我不知道,我下一步該做什麼,

我的servlet代碼如下,

protected void processRequest(HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException { 
    response.setContentType("text/html;charset=UTF-8"); 
    PrintWriter out = response.getWriter(); 
    String customer_id = request.getParameter("customer_id"); 
    String f_name = request.getParameter("f_name"); 
    String l_name = request.getParameter("l_name"); 
    String mobile_no = request.getParameter("mobile_no"); 
    String address = request.getParameter("address"); 

try { 
     //loading driver 

     Class.forName("oracle.jdbc.driver.OracleDriver"); 

     //creating connection with the database 
     Connection con = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:XE [kavindu on KAVINDU]","kavindu","123456"); 

     PreparedStatement ps = con.prepareStatement("insert into COMPACT_DISK values(?,?,?,?,?)"); 


     ps.setString(1, customer_id); 
     ps.setString(2, f_name); 
     ps.setString(3, l_name); 
     ps.setString(4, mobile_no); 
     ps.setString(5, address); 
     int i = ps.executeUpdate(); 

if (i > 0) { 
      //out.println("Compact disk successfully inserted"); 
      RequestDispatcher d = request.getRequestDispatcher("new.html"); 
      d.forward(request, response); 
     } 
    } catch (ClassNotFoundException | SQLException | ServletException | IOException se) { 
     out.println("Error Occured : \n" + se.getLocalizedMessage()); 
    } 
} 

@Override 
protected void doGet(HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException { 
    processRequest(request, response); 
} 

    */ 
@Override 
protected void doPost(HttpServletRequest request, HttpServletResponse response) 
     throws ServletException, IOException { 
    processRequest(request, response); 
} 

@Override 
public String getServletInfo() { 
    return "Short description"; 
}// </editor-fold> 

} 
+0

從JDBC URL中刪除'[kavindu on KAVINDU]'部分。教程中沒有提到你必須輸入。 –

回答

0

檢查數據庫的SID是正確的,我認爲這是問題所在。