springBoot系列之十二-----Web基础组件(servlet,filter,Listener)

瘦欲@ 提交于 2020-01-15 00:56:36

虽然现在Servlet已经几乎没有人用了,但是也许有一些技术还是需要Servlet 来实现的。

springBoot整合servlet

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 = "/myServlet")
public class MyServlet  extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

        System.out.println(".............MyServlet..............");
    }
}

springBoot整合Filter

@WebFilter(urlPatterns ="/myServlet")
public class MyFilter implements Filter {
    @Override
    public void init(FilterConfig filterConfig) throws ServletException {
        System.out.println("............Filter init..................");
    }

    @Override
    public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
        System.out.println("............Filter..................");
    }

    @Override
    public void destroy() {
        System.out.println("............Filter destroy..................");

    }
}

springBoot整合Listener

@WebListener
public class MyListener implements ServletRequestListener {
    @Override
    public void requestDestroyed(ServletRequestEvent servletRequestEvent) {
        System.out.println(" ................. Listener   requestDestroyed...................");
    }

    @Override
    public void requestInitialized(ServletRequestEvent servletRequestEvent) {

        System.out.println(" ................. Listener   requestInitialized...................");
    }
}

还需要spring能扫描到这几个注解在启动类上@ServletComponentScan  来标识 所在路径。

@SpringBootApplication
@ServletComponentScan(basePackages = "com.ja.spring_boot_dome.web")
public class SpringBootDomeApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringBootDomeApplication.class, args);
    }

}

 

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!