当前位置: 首页 > news >正文

总结SpringBoot1.x迁移到2.x需要注意的问题

  SpringBoot1.x和SpringBoot2.x版本差异化还是比较大的,有些三方依赖组件有些是基于2.0版本为标准升级的,当我们将项目由1.0升级到2.0时会出现依赖的方法不存在或方法错误,需要逐个去调整,下面总结了我们升级实践过程中遇到的一些问题和网友总结的一些问题。

Data 模块也做了许多更新和提升

1) 2.x 默认使用 HikariCP 连接池;
2) 更加合理化的优化了数据库初始化逻辑;
3) spring.jdbc.template 自动配置现在可以通过 spring.jdbc.template 属性定制;
4) 提供了新配置 spring.jdbc.template 方便分页和排序;
5) 对数据库 spring.jdbc.template 自动化配置支持;
6) 可以高级定制 MongoDB 客户端;
7) 可以通过 spring.cache.redis.* 来配置 Redis 缓存默认值。

静态资源文件处理

切记,springboot2的静态资源必须手动设置路径映射才可以访问。

1.在 resources下面手动新建文件夹,楼主新建的文件夹名称为 static,当然也可以叫其他名字,比如 demo。然后把所有的静态资源文件放到 static 或者 demo 下。

2.java 代码配置,切记,在Spring Boot 1.5版本都是靠重写WebMvcConfigurerAdapter的方法来添加自定义拦截器,消息转换器等。SpringBoot 2.0 后,该类被标记为@Deprecated。因此我们只能靠实现WebMvcConfigurer接口来实现。

/**

* SpringBoot中访问doc.html报404的解决办法

* @author james

*/

@Configuration

publicclass WebMvcConfiguration implements WebMvcConfigurer {

/**

* 资源处理器

*

* @param registry

*/

@Override

publicvoid addResourceHandlers(ResourceHandlerRegistry registry) {

registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");

registry.addResourceHandler("swagger-ui.html", "doc.html")

.addResourceLocations("classpath:/META-INF/resources/");

registry.addResourceHandler("/webjars/**")

.addResourceLocations("classpath:/META-INF/resources/webjars/");

}

}

Actuator加强

在 2.x 中,对执行器端点进行了许多改进,所有的 HTTP 执行端点现在都暴露在 /actuator路径下,并对 JSON 结果集也做了改善

Redis异常

Error:(28, 33) java: 对于RedisCacheManager(org.springframework.data.redis.core.RedisTemplate), 找不到合适的构造器

解决SpringBoot2.0中:

@Bean

public CacheManager cacheManager(RedisConnectionFactory factory) {

RedisCacheManager rcm = RedisCacheManager.builder(factory).build();

return rcm;

}

SpringBoot2中访问doc.html报404的解决办法

添加WebMvcConfiguration文件

@Configuration

publicclass WebMvcConfiguration implements WebMvcConfigurer {

/**

* 资源处理器

*

* @param registry

*/

@Override

publicvoid addResourceHandlers(ResourceHandlerRegistry registry) {

registry.addResourceHandler("/static/**").addResourceLocations("classpath:/static/");

registry.addResourceHandler("swagger-ui.html", "doc.html")

.addResourceLocations("classpath:/META-INF/resources/");

registry.addResourceHandler("/webjars/**")

.addResourceLocations("classpath:/META-INF/resources/webjars/");

}

http://www.lryc.cn/news/22092.html

相关文章:

  • Api接口小知识
  • 「JVM 高效并发」Java 协程
  • Web Spider案例 网洛者 第一题 JS混淆加密 - 反hook操作 练习(五)
  • 前端基础之CSS扫盲
  • mysql组复制、mysql路由器、mysql的MHA高可用
  • 一篇搞懂springboot多数据源
  • Verilog 数据类型和数组简介
  • 【数据结构】时间复杂度和空间复杂度以及相关OJ题的详解分析
  • 31--Vue-前端开发-Vue语法
  • 这份IC设计必读书单,值得所有IC设计工程师一看!
  • Acwing 蓝桥杯 第一章 递归与递推
  • 模型部署笔记
  • 多线程之wait和notify
  • MVCC 当前读 快照读 RC read view RR下事务更新不会丢失
  • NCRE计算机等级考试Python真题(二)
  • 借助IBM Spectrum LSF为芯片行业大幅提升算力,预测未来
  • 力扣-换座位
  • DFT基本入门介绍
  • 做「增长」必须懂的6大关键指标
  • Linux:soft lockup 检测机制
  • 天线理论知识4——非频变天线
  • 基础架构组件选型及服务化
  • leetcode-每日一题-1247(中等,数学逻辑)
  • 前端面试题 —— 计算机网络(一)
  • 分布式-分布式缓存笔记
  • 【反序列化漏洞-01】为什么要序列化
  • 用c语言模拟实现常用字符串函数
  • 在 Flutter 中使用 webview_flutter 4.0 | 基础用法与事件处理
  • JavaWeb--Servlet
  • Linux启动过程