Java Servlet 入门:使用Tomat的servlet-api.jar库解决:servlet java.lang.ClassNotFoundException

2年前 (2022) 程序员胖胖胖虎阿
273 0 0

问题:

在通过Maven添加依赖:javax.servlet-api后,发现运行总是提示错误:

Java Servlet 入门:使用Tomat的servlet-api.jar库解决:servlet java.lang.ClassNotFoundException

对于新手,如果短时间内,通过网上的教程,无法解决该问题,那么,可以先跳过它。

有一种替换方式,就是引用Tomcat的servlet-api.jar。

解决:

项目右键属性:添加Tomcat的servlet-api.jar包:

Java Servlet 入门:使用Tomat的servlet-api.jar库解决:servlet java.lang.ClassNotFoundException

 

包的路径在Tomcat安装目录lib下:

 Java Servlet 入门:使用Tomat的servlet-api.jar库解决:servlet java.lang.ClassNotFoundException

 

在java代码中:注意引用的包,不再是javax.servlet,而是jakarta.servlet。

import java.io.IOException;

import jakarta.servlet.Servlet;
import jakarta.servlet.ServletConfig;
import jakarta.servlet.ServletException;
import jakarta.servlet.ServletRequest;
import jakarta.servlet.ServletResponse;
import jakarta.servlet.annotation.WebServlet;
import jakarta.servlet.http.HttpServlet;

@WebServlet(value="/demo")
public class HelloServlet implements Servlet {

    //完成初始化的方法,默认情况下,servlet第一次被访问时调用,且只调用一次
    public void init(ServletConfig servletConfig) throws ServletException {
        System.out.println("innit-----------------------------------");

    }
    //销毁方法,内存释放时或者服务器关闭时会调用一次,且只能调用一次。
    public void destroy() {
        System.out.println("destroy-----------------------------------");

    }
    public ServletConfig getServletConfig() {
        System.out.println("getServletConfig-----------------------------------");
        return null;
    }
    public String getServletInfo() {
        System.out.println("getServletInfo-----------------------------------");
        return null;
    }

    //提供服务,每一次被访问是都会被访问
    public void service(ServletRequest arg0, ServletResponse arg1) throws ServletException, IOException {
        arg1.getWriter().write("hello world!");
        System.out.println("hello world-------------------------");
        
    }
}

使用注解,也不用配置xml。

运行后:

Java Servlet 入门:使用Tomat的servlet-api.jar库解决:servlet java.lang.ClassNotFoundException

相关文章

暂无评论

暂无评论...