关于SpringBoot 1.x和2.x版本差别

Posted 帅气的娃哈哈

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于SpringBoot 1.x和2.x版本差别相关的知识,希望对你有一定的参考价值。

有点小差别

基本上基于SpringBoot的代码不需要改动,但有些配置属性和配置类,可能要改动,改动原因是

配置和类的更新或者是改名
一般正常的MVC,数据库访问这些都不需要改动,下面按照本书章节说明区别

  1. 第1章,SpringBoot 2基于Spring5和JDK8,而Spring 1x则用的是降低版本,带来的为可能是你的应用服务必须支持JDK8
  2. 第2章,无区别,使用SpringBoo2,建议使用较新的Maven版本,以及较新的JDK,尤其是IDE工具,以免Maven在IDE里的视图报出警告信息
  3. 第3章:MVC部分,有些定制类改动了,比如WebMvcConfiguer,由抽象类改为接口,这是因为JDK8对接口有新的支持形式,3.8章提到的统一错误处理,基类AbstarctErrorController也改动非常大,请参考书中描述的知识点。MVC里的视图渲染Freemaker视图解析器也有改动,默认情况下,它会自动加上ftl来来寻找模板
  4. 第4章:关于Beetl,无改动,请使用新版本即可
  5. 第5章,无改动,JDBCTemplate和BeetlSQL均可以使用
  6. 第6章,JPA中,findById 返回了一个Optional对象,改动较大,会直接影响所有业务代码
  7. 第7章,SpringBoot配置,web应用的ContextPath 配置属性已经改动,可以参考本文章的7.1.1 说明。另外配置文件的中文可以直接读取,而不需要转码。另外,自动装配里Boot提供的JavaVersion类报名改动了。根据jdk版本自动装配的需要调整代码
  8. 第8章,部署SpringBoot无改动
  9. 第9章,测试SpringBoot无改动
  10. 第10章,无改动,但Sagger UI变化较大。除了参考本书外,还需要密切注意Sawgger的最新特性
  11. 第11章, MongDB,无变化
  12. 第12章,Redis 无变化
  13. 第13章,ElasticSearch,无改动,应该说SpringBoot2做的更好了。需要密切注意Elastic Search本身版本变化,它也是版本帝,Spring Boot略有点根本上。因此不能担保在因为Elastci Search的RESTAPI变化导致Spring Boot不兼容,所以一定要使用Spring Boot指定的版本
  14. 第14章,基本无改动,但内部CacheManager和Cache的接口改动,因此缓存机制内部变化交大,书里提到的一二级分布式缓存实现方式变化就比较大
  15. 第15章,SpringSession 无变化
  16. 第16章,由于本书将的是用Curator集成Spring Boot,所以无变化
  17. 第17章,Acutator,本章SpringBoot1.x和2变化较大,默认情况,不再启用所有监控,另外编写自己监控信息,完全需要重写,HealthIndicator,EndPoint 变化很大

 

以上是关于关于SpringBoot 1.x和2.x版本差别的主要内容,如果未能解决你的问题,请参考以下文章

springBoot 1.x和2.x 获取application.yml参数的方法

springBoot 1.x和2.x 获取application.yml参数的方法

SpringBoot-SpringCloud-版本对应关系

Hadoop 2.2.0 集群搭建

《SpringBoot静态资源访问》

再见 Spring Boot 1.X ,Spring Boot 2.X 走向舞台中心