自定义配置类【配置servlet容器组件】
@Configuration
public class MyServerConfig {
/**
* 自定义servlet
* @return
*/
@Bean
public ServletRegistrationBean servletRegistrationBean(){
//当访问myservlet时,直接映射到Myservlet类中
ServletRegistrationBean myservletServletRegistrationBean = new ServletRegistrationBean(new Myservlet(),"/myservlet");
return myservletServletRegistrationBean;
}
/**
* 自定义过滤器
* @return
*/
@Bean
public FilterRegistrationBean filterRegistrationBean(){
FilterRegistrationBean filterRegistrationBean = new FilterRegistrationBean();
filterRegistrationBean.setFilter(new MyFilter());
filterRegistrationBean.setUrlPatterns(Arrays.asList("/success","/main"));
return filterRegistrationBean;
}
/**
* 自定义监听器
* @return
*/
@Bean
public ServletListenerRegistrationBean servletListenerRegistrationBean(){
ServletListenerRegistrationBean<Mylistener> listenerRegistrationBean = new ServletListenerRegistrationBean<>();
return listenerRegistrationBean;
}
}
Listener
public class Mylistener implements ServletContextListener {
@Override
public void contextInitialized(ServletContextEvent sce) {
System.out.println("启动中。。。。。。。。。。。。。。。。");
}
@Override
public void contextDestroyed(ServletContextEvent sce) {
System.out.println("销毁中。。。。。。。。。。。。。。。。");
}
}
Filter
public class MyFilter implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
}
@Override
public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException {
}
@Override
public void destroy() {
}
}
Servlet
public class Myservlet extends HttpServlet {
@Override
protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
}
@Override
protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
doPost(req,resp);
}
}