次の Java クラスがあります。
package web;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.sql.*;
public class HelloWorld extends HttpServlet {
public void doPost(HttpServletRequest request,HttpServletResponse response)throws IOException, ServletException {
response.setContentType("text/html");
PrintWriter out = response.getWriter();
out.println("Student Name<br>");
try{
Connection conn=null;
String url = "jdbc:mysql://localhost/test";
PreparedStatement pre=null;
Class.forName("com.mysql.jdbc.Driver").newInstance();
conn=DriverManager.getConnection(url,"root","3324911");
out.println("Database connected");
pre = conn.prepareStatement("Insert INTO countries(COUNTRY,COUNTRY_ISO_CODE,REGION) VALUES (?,?,?)");
pre.setString(1,"USA");
pre.setString(2,"US");
pre.setString(3,"North America");
pre.executeUpdate();
}catch (Exception e){//Catch exception if any
System.err.println("Error: " + e.getMessage());
}
}
}
何らかの理由で、このクラスを Tomcat にデプロイした後、プログラムは次の行にしか到達できませんでした
Class.forName("com.mysql.jdbc.Driver").newInstance();
次の行に到達すると失敗します。
conn=DriverManager.getConnection(url,"root","3324911");
この try/catch ブロックは別のメソッドとして機能しています。別のクラスのメイン メソッドから取得しましたが、正しく機能しています。
この try/catch ブロックを Tomcat に接続すると、どこで失敗したのかわかりません。
どんな助けでも大歓迎です、ありがとう!