簡體   English   中英

無法使JDBC驅動程序在tomcat jsp中工作

[英]Cannot get JDBC driver to work in tomcat jsp

我嘗試在tomcat上運行的jsp中建立到mysql數據庫的簡單示例連接。

運行下面的代碼,我得到響應:沒有為jdbc找到合適的驅動程序:mysql:// localhost / TestingDB

<HTML>
    <HEAD><TITLE>Testing mysql</TITLE></HEAD>
<BODY>

<%@ page import = "java.sql.*"%>

<%  
        String url = "jdbc:mysql://localhost/TestingDB";

        String user = "mysql";
        String password = "pwd";

    try {
        Connection con = DriverManager.getConnection(url, user, password);
        out.println("Success");
        Statement st = null;
        ResultSet rs = null;
        st = con.createStatement();
        rs = st.executeQuery("SELECT * FROM TestTable");
        while(rs.next()){ 
            out.println(rs.getString("String1"));
        }

    } catch (Exception e) {
        out.println(e.getMessage());
            e.printStackTrace();
        }
%>

</BODY>
</HTML>

我已經將mysql-connector-java-5.1.xx-bin.jar放在CATALINA_HOME / lib目錄中,當它不起作用時,我嘗試將其放在{appname} / WEB-INF / lib目錄中。

我已經在每次嘗試之間使用服務 重新啟動了 tomcat

訪問數據庫應該沒有任何問題,因為在獨立的Java類中使用(幾乎)相同的代碼可以正常工作。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.sql.ResultSet;

class JDBCTest {

    private static final String url = "jdbc:mysql://localhost/TestingDB?useSSL=false";

    private static final String user = "mysql";     
    private static final String password = "pwd";

    public static void main(String args[]) {
            try {
            Connection con = DriverManager.getConnection(url, user, password);
            System.out.println("Success");
            Statement st = null;
            ResultSet rs = null;
            st = con.createStatement();
            rs = st.executeQuery("SELECT * FROM TestTable");
            while(rs.next()){ 
                  System.out.println(rs.getString("String1"));
            }

        } catch (Exception e) {
            e.printStackTrace();
        }
    }
}

我的想法真的耗盡了。 歡迎所有幫助!

我已經將mysql-connector-java-5.1.xx-bin.jar放在CATALINA_HOME / lib目錄中

那應該可以,但是您必須在測試之前重新啟動Tomcat。

當它不起作用時,我嘗試將其放在{appname} / WEB-INF /目錄中。

錯誤。 應該是{appname}/WEB-INF/lib目錄。

無論如何,您應該在META-INF / context.xml中將此數據庫定義為資源,然后通過java:comp/env/jdbc名稱空間上的JNDI查找從Tomcat獲取它。 您正在做的是不好的練習。

您忘記將端口放入URL訪問。

這是連接URL的簡單示例:

jdbc:mysql:// localhost: 3306 / TestingDB;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM