springboot 配置过滤器
写一个继承类
启动器扫一下
此时访问一下页面就可以观察到过滤器的信息
代码
package com.example.demo.Filter;
import lombok.extern.slf4j.Slf4j;
import javax.servlet.*;
import javax.servlet.annotation.WebFilter;
@Slf4j
@WebFilter(filterName = "myFilter1", urlPatterns = "/*")
public class MyFilter1 implements Filter {
@Override
public void init(FilterConfig filterConfig) throws ServletException {
log.info(filterConfig.getFilterName() + " init,过滤器初始化成功!");
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) {
log.info("myFilter1 begin");
try {
log.info("业务方法执行");
chain.doFilter(request, response);
} catch (Exception e) {
log.error("error!", e);
}
log.info("myFilter1 end");
}
@Override
public void destroy() {
}
}
启动器
package com.example.demo;
import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;
@SpringBootApplication(scanBasePackages = {"com.example"})
@MapperScan("com.example.demo.mapper")
@ServletComponentScan(basePackages = "com.example.demo.Filter")
public class Demo10Application {
public static void main(String[] args) {
SpringApplication.run(Demo10Application.class, args);
}
}