学完了这三个之后,好像觉得有一些关联,但是又不清楚为什么,在boot项目下,由于配置文件更少了,所以更要深刻的理解这些内容。
--本节只介绍区别和启动类,至于实现的功能,不在这里做具体的介绍了,网上关于具体的使用例子很多,大家可以自己百度一下。
过滤器
监听器
--过滤器和监听器是java ee的范畴,在boot项目下,不会认识javax.servlet.下的类,在ssm项目里,这些内容要配置在web.xml文件里。但是boot项目没有web.xml文件,可以在启动类上加ServletComponentScan注解。
pic as below
--如果没有使用ServletComponentScan注解,那么boot项目里的servlet和filter和listener都无效。
拦截器
拦截器HandlerInterceptor是spring的框架,所以启动类不用加任何注解
org.springframework.web.servlet.HandlerInterceptor
因为是spring的类,所以boot会自动认识这个类
注意ssm项目时,拦截器的配置文件要写在springmvc的配置xml里,同样,在boot项目里,没有其对应的xml文件,但是boot会自动地通过WebMvcConfigurerAdapter配置拦截器
pic as below
这个类也是spring下的类,同时这个类有SpringBootConfiguration这个注解,boot读取后会自动生成其对应的xml配置文件。
PS:这里也用到了@Component,@Bean,@Configuration注解
面试一般都会问道这三个的其中一个