簡體   English   中英

找不到MYSQL驅動程序類

[英]MYSQL driver class not found

請問我正在嘗試從jsp文件中獲取數據庫數據,但是找不到驅動程序類(輸出錯誤),當我直接執行java類時它運行良好但是當我從中調用它時它找不到jsp文件。

這是jsp代碼

<%@page import="java.util.*"%>
<%@page import="java.lang.Class"%>
<%@ page language="java" import="DAO.*"%>

<%
 try{
   List<String> names=DB.getNames();
   out.print(names);
   out.flush();
    }
 catch(Exception e)
    {
   e.printStackTrace();
    }
   %>

並且在執行main時java類中基本相同。

public static void main(String[] args){
for(Iterator it=DB.getNames().iterator(); it.hasNext();) 
    System.out.println(it.next()); 

 }

從java直接工作,但從jsp調用時找不到。

該錯誤顯示數據庫連接函數中的問題,特別是在此行com.mysql.jdbc.Driver

java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1892)
at org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1735)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Unknown Source)
at DAO.DB.connect(DB.java:21)
at DAO.DB.getNames(DB.java:35)

這個問題正在面臨,因為您的Tomcat無法找到JSP / Java代碼中引用的此類。

您需要將MySQL Connector/J jar放在CATALINA_HOME/lib文件夾或<yourApplicationWAR>/WEB-INF/lib ,希望您的DB相關代碼在JSP本身中。 Latter比在您的Tomcat(或任何類似的應用程序服務器)中放置Connector / J更受歡迎

如果代碼在您的JAVA類中,那么您需要將它放在IDE類路徑中,最好放在CLASSPATH環境變量中。

暫無
暫無

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

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