SpringBoot高级功能
热部署(devtools)
在idea里的热部署
https://www.cnblogs.com/winner-0715/p/6666579.html
原理:因为SpringBoot没有 tomcat的reload的功能。而devtools可以实现轻量级的restart。
而且是真正意义上面的热部署。可以添加方法、删除方法。
- make project automatically 设置启动
- Ctrl +Shift + Alt + / ,register里面设置 running为true
- 加载spring-boot-devtools依赖jar包
- 设置maven plugin为 frok为true
在myeclipse里的热部署
类似于idea里面的配置,不需要额外的配置,同时jsp等静态文档,不会重启但是获取到的是最新的静态资源
拦截器
http://tengj.top/2017/03/30/springboot6/
- 写拦截类 重写HandlerInterceptor接口
- 继承重写WebMvcConfigurerAdapter中的addInterceptors方法把自定义的拦截器类添加进来即可public class MyInterceptor implements HandlerInterceptor {@Overridepublic boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {}}@Configurationpublic class MyWebMvcConfigurerAdapter extends WebMvcConfigurerAdapter {@Overridepublic void addInterceptors(InterceptorRegistry registry) {// addPathPatterns 用于添加拦截规则// excludePathPatterns 用户排除拦截registry.addInterceptor(new MyInterceptor()).addPathPatterns("/**").excludePathPatterns("/toLogin","/login");super.addInterceptors(registry);}}