2014-03-04 110 views
0

我寫了一個小JSP應用程序來測試連接。我使用XAMPP。模塊Apche,mySql,Tomcat正在運行。我使用Netbeans 7.4。的代碼是:小JSP應用程序不起作用

<%@page language="java" contentType="text/html"%> 
<%@page import="java.sql.*"%> 
    <html><head><title>JDBC test</title></head><body> 
    <% 
     Class.forName("com.mysql.jdbc.Driver"); 
     Connection conn = DriverManager.getConnection(
       "jdbc:mysql://localhost:8084/book_shop_db", "root", ""); 
     System.out.println("CONN = " + conn); 
     Statement stmt = conn.createStatement(); 
     ResultSet rs = stmt.executeQuery("select * from books"); 
    %><table border= "1"><% 
     ResultSetMetaData resMetaData = rs.getMetaData(); 
     int nCols = resMetaData.getColumnCount(); 
     %><tr><% 
     for (int kCol = 1; kCol <= nCols; kCol++) { 
      out.print("<td><b>" + resMetaData.getColumnName(kCol) + "</b></td>"); 
     } 
      %></tr><% 
     while (rs.next()) { 
      %><tr><% 
     for (int kCol = 1; kCol <= nCols; kCol++) { 
      out.print("<td>" + rs.getString(kCol) + "</td>"); 
     } 
      %></tr><% 
     } 
      %></table><% 
     conn.close(); 
     %> 
    </body></html> 

當運行該應用程序,以下錯誤出現:

HTTP Status 500 - An exception occurred processing JSP page /index.jsp at line 11 

其中線11是:

11:    Class.forName("com.mysql.jdbc.Driver"); 

在NetBeans中,在工具 - >服務器 - > Tomcat我有: 用戶名:ide 密碼:*

好的。密碼可以顯示沒有任何問題。

服務器端口是:8084在XAMPP,港口是: 爲Apache:100,443(OK) 對於MySQL:3306 爲Tomcat:8005,8809,8080

我真的很困惑。我如何讓應用程序運行?

謝謝。

EB

+0

確保您在類路徑中添加了JDBC驅動程序。 – Salah

回答

0

下載從here MySQL JDBC驅動程序,並把它放在你的WEB-INF/lib目錄下。

+0

我下載了它並把它放在目錄中。它現在有效。感謝名單。另一個問題:我不想每次都做這些操作。我在哪裏可以將mysql jdbc jar自動訪問它? –

+0

由於不同類型的應用程序(具有相同類型但不同版本的相關性)可能在同一臺服務器上運行,因此將其依賴關係置於lib文件夾(每個應用程序)中的常用方式。另一種方法是將它們放在服務器的lib文件夾中,但這可能會導致副作用,這可能很難解決。 – Stefan