配置文件报错
问题:
配置文件中项目名称配置报错: server.context-path: /spring
原因:
大量的 Servlet 专属的 server.* properties 被移到了 server.servlet 下:
由此可以看出一些端倪, 那就是 server 不再是只有 servlet 了, 还有其他的要加入.
解决方案:
server.context-path: /spring 改成 server.servlet.context-path: /spring 既可
web Starter 作为传递依赖
问题:
工程用的模板是 thymeleaf, 启动报错提示找不到 spring-boot-starter-Web
原因:
以前有几个 Spring Boot starter 是依赖于 Spring MVC 而传递的 spring-boot-starter-Web. 在 Spring WebFlux 新的支持下, spring-boot-starter-mustache,spring-boot-starter-freemarker 并 spring-boot-starter-thymeleaf 不再依赖它. 开发者有责任选择和添加 spring-boot-starter-Web 或 spring-boot-starter-webflux.
解决方案:
导入 spring-boot-starter-Web 既可
- <dependency>
- <groupId>
- org.springframework.boot
- </groupId>
- <artifactId>
- spring-boot-starter-Web
- </artifactId>
- </dependency>
Thymeleaf 3.0 默认不包含布局模块
问题:
启动项目的时候发现首页空白, 查看后台也没有任何的报错信息
原因:
Spring Boot 2.0 中 spring-boot-starter-thymeleaf 包默认并不包含布局模块, 需要使用的时候单独添加.
解决方案:
- <dependency>
- <groupId>
- nz.NET.ultraq.thymeleaf
- </groupId>
- <artifactId>
- thymeleaf-layout-dialect
- </artifactId>
- </dependency>
拦截器过时
问题:
升级后, WebMvcConfigurerAdapter 提示过时
原因:
升级后的 springBoot, 使用了 java8 的特性 default 方法, 所以直接实现 WebMvcConfigurer 这个接口即可.
解决方案:
旧:
public class MyWebMvcConfigurerAdapter extends WebMvcConfigurerAdapter
新:
public class MyWebMvcConfigurerAdapter implements WebMvcConfigurer
静态资源被拦截
问题:
访问系统的时候登录样式没有加载
原因:
1.5 版本时候 META-INF/resources / resources / static / public 都是 spring boot 认为静态资源应该放置的位置, 会自动去寻找静态资源, 而在 spring boot 2.0 则对静态资源也进行了拦截, 当拦截器拦截到请求之后, 但 controller 里并没有对应的请求时, 该请求会被当成是对静态资源的请求. 此时的 handler 就是 ResourceHttpRequestHandler, 就会抛出上述错误.
解决方案:
解决办法就是, 在拦截器那里排除静态资源的请求路径
- /**
- 拦截器
- @param registry
- */
- @Override
- public void addInterceptors(InterceptorRegistry registry) {
- // addPathPatterns 用于添加拦截规则
- // excludePathPatterns 用户排除拦截
- registry.addInterceptor(new MyInterceptor()).addPathPatterns("/").excludePathPatternss("/toLogin","/login","/assets/","/js/**");
- }
assets 就是我放静态文件的目录
全局异常特殊处理
问题:
上一篇提到过的有些错误你可能想特殊对待处理的, 现在对应代码标红, 找不到对应的类
原因:
新版本后该方法去掉了, 需要换成新的方法处理
解决方案:
旧代码:
来源: http://www.bubuko.com/infodetail-2889109.html