新建MyServlet类
package org.hx.springboot_servelt;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
@WebServlet(urlPatterns = "/hello")
public class MyServlet extends HttpServlet {
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req,resp);
}
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
System.out.println("MyServlet");
}
}
新建MyFilter类
package org.hx.springboot_servelt;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
import java.io.IOException;
@WebFilter(urlPatterns = "/*")
public class MyFilter implements Filter {
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
System.out.println("MyFilter");
filterChain.doFilter(servletRequest,servletResponse);
}
}
新建MyListener类
package org.hx.springboot_servelt;
import org.springframework.web.context.request.RequestContextListener;
import javax.servlet.ServletRequestEvent;
import javax.servlet.annotation.WebListener;
@WebListener
public class MyListener extends RequestContextListener {
@Override
public void requestInitialized(ServletRequestEvent requestEvent) {
System.out.println("requestInitialized");
}
@Override
public void requestDestroyed(ServletRequestEvent requestEvent) {
System.out.println("requestDestroyed");
}
}
在SpringBoot启动类中添加注解,扫描这个包。
@ServletComponentScan("org.hx.springboot_servelt")
启动项目以后,浏览器输入localhost://8080/hello,可以看到搜索控制台输出
requestInitialized
MyFilter
MyServlet
requestDestroyed