Spring-boot相较于Spring4的优势:
1、简化了Spring4的配置流程,进行自动配置,降低了项目搭建的复杂度(Spring4的配置非常复杂,各种XML、 JavaConfig、hin处理起来比较繁琐)
2、不需要单独安装Tomcat容器,maven打包jar,跑起来就是一个网站,
注:
1、Spring4 :一个“引擎”
2、Spring MVC:基于servlet的web开发框架
3、Spring-boot:基于Spring4的条件注册的一个快速开发整合包
另外Spring Boot只是承载者,辅助你简化项目搭建过程的。如果承载的是WEB项目,使用Spring MVC作为MVC框架,那么工作流程和你上面描述的是完全一样的,因为这部分工作是Spring MVC做的而不是Spring Boot
由于Spring boot 中优化了配置流程,所以省去一些xml、javaConfig等配置
例如:web.xml文件不用了
如何实现拦截器机制:
1、首先写一个自定义的过滤器(Filter),用于session处理,如判断用户是否登陆
@Configuration
public class SessionManagerFilter extends HttpServlet implements Filter {
2、注册拦截器:
@Configuration
public class FilterConfiguration {
@Autowired
private SessionManagerFilter sessionManagerFilter;
@Bean
public FilterRegistrationBean filterRegistration() {
FilterRegistrationBean registration = new FilterRegistrationBean();
System.out.println("sssssssss>>>>>>>>>>>>>>>>>>>>>>>>>>>>>");
//注入过滤器
registration.setFilter(sessionManagerFilter);
//拦截规则
registration.addUrlPatterns("/cou/*");
//过滤器名称
registration.setName("sessionManagerFilter");
//是否自动注册 false 取消Filter的自动注册
registration.setEnabled(true);
//过滤器顺序
registration.setOrder(1);
Collection<String> url = registration.getUrlPatterns();
System.out.println(JSONObject.toJSON(url));
return registration;
}
注册拦截器中进行注册过滤器,其次,针对该过滤器可以进行过滤路径配置、设定执行优先级等
当服务启动时,首先加载配置文件,其次,装配注册过滤器类,同时初始化过滤器,当请服务器发出请求时,首先通过注册过滤器类判断请求路径,如果没有被拦截则可以到过滤器中