找不到servlet类中的异常:Class.ForName(“ com.mysql.jdbc.Driver)

时间:2020-05-03 19:21:56

标签: java tomcat servlets jdbc

我从字面上尝试了所有可用的解决方案,但都无济于事,我的类路径正确且可以正常工作,我还尝试在servlet目录结构的lib目录中添加mysqlconnector.jar,但无济于事,解决了我的问题。顺便说一下,我没有使用任何IDE,而是通过记事本进行编码,并手动使用tomcat运行servlet程序,IDE中的问题很容易解决,但在记事本中很难解决。通过这种方式,我拥有Apache Tomcat 10安装使用jakarta而不是javax的Java servlet的代码如下:

import java.util.*;
import java.io.*;
import jakarta.servlet.*;
import jakarta.servlet.http.*;
import java.sql.*;

public class loginn extends HttpServlet
{
    protected void doGet(HttpServletRequest req,HttpServletResponse res)throws IOException,ServletException
    {
        res.setContentType("text/html");
        PrintWriter out=res.getWriter();
        String n=req.getParameter("uname");
        String p=req.getParameter("pass");
        out.println("<html><head><title>Login detail</title></head><body>");
        try
        {
            out.println("Yo!!!");
            Class.forName("com.mysql.jdbc.Driver");
            Connection con=DriverManager.getConnection("jdbc:mysql://localhost:3306/dad_servlet_assignment1","root","");
            Statement stmt=con.createStatement();
            ResultSet rs=stmt.executeQuery("select * from login");
            boolean flag=false;
            while(rs.next() && !flag)
            {
                String un=rs.getString("username");
                out.println(un);
                String pass=rs.getString("password");
                if(n.equals(un) && p.equals(pass))
                {
                    flag=true;
                    break;
                }
            }
            out.println("YO!");
            if(flag)
            {
                out.println("<h1>Login Successful!</h1><br><br>");
                out.println("Welcome User: "+n+"<br><br>");
            }
            else
            {
                out.println("Invalid Username or password! <br><br>Enter Details Again<br><br>");
                RequestDispatcher rd=req.getRequestDispatcher("index.html");
                rd.forward(req,res);
            }

                out.println("</body></html>");
        }
        catch(Exception e)
        {
            out.println("Yikes");
            out.println("Exception: "+e.getMessage());
        }
        out.println("</body></html>");
    }
}

伙计们,我们非常感谢您的帮助!谢谢你。

解决方案:

通过我自己找到解决方案的方式,我无法找到com.mysql.jdbc.Driver,因为sqlconnector的类路径位于程序文件中,而我的apache类路径位于程序文件中(x 86)因此,我只是在apache tomcat 10的lib中添加了mysqlconnector,然后我所做的就是在环境路径和tada中为mysqlconnector.jar设置了附加路径!我的问题解决了!

0 个答案:

没有答案
相关问题