文档章节

Spring Boot 1 和 Spring Boo 2的差别

闲大赋
 闲大赋
发布于 2017/11/29 10:17
字数 908
阅读 2987
收藏 0

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

配置已经不存在或者改名 类已经不存在改名

听着挺吓人,但我实际切换过程中改动的地方很少。一般正常的MVC,数据库访问这些都不需要改动,下面按照我写的《Spring Boot 2精髓:从构建小系统到架构分布式大系统》本书章节说明我曾碰到的区别

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

当然最根本差别还是Spring5 和 JDK8了,我公司就为是否因为使用JDK8而争论了多次.....

© 著作权归作者所有

共有 人打赏支持
上一篇: 暖心的回复
闲大赋

闲大赋

粉丝 1139
博文 91
码字总数 86499
作品 10
西城
架构师
私信 提问
加载中

评论(34)

银杏林守望者
就事论事,文章是Spring Boot 1 和 Spring Boot 2的差别,文章本身挺好。。。。
下面跟帖那么多人吵什么。。。。。
beetl模板我不用,因为我确实不喜欢模板技术;beetlsql在用,觉得挺好的,下面说了半天也没说出beetlsql有啥问题,都是开源软件,觉得不好自己写一个就是了。。也算百花齐放
阿影
阿影
JDK8还用讨论啊?新上的系统全部换,旧系统慢慢迁移喽。
blu10ph
blu10ph
好~
闲大赋
闲大赋

引用来自“时间红”的评论

客观点讲, 这本书讲beetl我没意见,确实用的人不少~~~
当时重点篇章讲beetlsql,刻意无视mybatis ,提都不提,有点过不去了~~~~~~~
你这是夹杂了私心啊,技术人员要客观

另外 ,这本书值得购买,我看了一下,还是有不少收获的,63块 花的值了

引用来自“南湖船老大”的评论

mybatis 这么恶心的东西提它干嘛。。。

mybatis的报错实在太无语了,根本就是瞎报错。。。你根据报错的提示根本找不到真正的错误原因
:clap: 过来人才会有自己的判断,谢谢为beetlsql说了几句话
南湖船老大
南湖船老大

引用来自“时间红”的评论

客观点讲, 这本书讲beetl我没意见,确实用的人不少~~~
当时重点篇章讲beetlsql,刻意无视mybatis ,提都不提,有点过不去了~~~~~~~
你这是夹杂了私心啊,技术人员要客观

另外 ,这本书值得购买,我看了一下,还是有不少收获的,63块 花的值了
mybatis 这么恶心的东西提它干嘛。。。

mybatis的报错实在太无语了,根本就是瞎报错。。。你根据报错的提示根本找不到真正的错误原因
闲大赋
闲大赋

引用来自“叮当王子”的评论

这个作者真是见不得人说,人就说一句bettl不好,都不算是批评,你说白了就是个生意人,和气生财,就这么毫无痛点的一句话,你干嘛要骂人啊,真是眼睛大肚子小!

引用来自“闲大赋”的评论

又一个小号。。为了诋毁我,oschina很多僵尸帐号,我都无语了。
我不是生意人,我上班外还搞开源,并多年来一直支持开源,还探索SpringBoot,并贡献出来我的认知。你贡献了什么,就上嘴皮和下嘴皮吗?注册一个马甲,然后再骂一下开源作者,你是现实生活中的弱智和傻逼

引用来自“叮当王子”的评论

你看看人家就说了这么一句“Spring Boot 2还没有正式发布,书就出来了,Spring Boot 中从来没有推荐过 beetl,提他做什么?”你就开始喷,真没见过你这么小肚鸡肠的人,我第一次在技术贴下面看到骂战骂得这么凶的,本帖一共27楼,大部分都是你在喷你还好意思说别人。我纯粹就是偶然看到实在是看不下去了,世界上怎么可以有这么心胸狭窄的技术人,是不是测试人员只要推个 bug给你你就得气的几天不吃饭啊。心胸狭窄,心胸狭窄,心胸狭窄。。。
傻逼一个,对你这种一来就注册从来没发言,一发言就骂人,我自然认为就是傻逼马甲,骂你怎么了?傻逼马甲,傻逼马甲,傻逼马甲
叮当王子
叮当王子

引用来自“叮当王子”的评论

这个作者真是见不得人说,人就说一句bettl不好,都不算是批评,你说白了就是个生意人,和气生财,就这么毫无痛点的一句话,你干嘛要骂人啊,真是眼睛大肚子小!

引用来自“闲大赋”的评论

又一个小号。。为了诋毁我,oschina很多僵尸帐号,我都无语了。
我不是生意人,我上班外还搞开源,并多年来一直支持开源,还探索SpringBoot,并贡献出来我的认知。你贡献了什么,就上嘴皮和下嘴皮吗?注册一个马甲,然后再骂一下开源作者,你是现实生活中的弱智和傻逼
你看看人家就说了这么一句“Spring Boot 2还没有正式发布,书就出来了,Spring Boot 中从来没有推荐过 beetl,提他做什么?”你就开始喷,真没见过你这么小肚鸡肠的人,我第一次在技术贴下面看到骂战骂得这么凶的,本帖一共27楼,大部分都是你在喷你还好意思说别人。我纯粹就是偶然看到实在是看不下去了,世界上怎么可以有这么心胸狭窄的技术人,是不是测试人员只要推个 bug给你你就得气的几天不吃饭啊。心胸狭窄,心胸狭窄,心胸狭窄。。。
闲大赋
闲大赋

引用来自“叮当王子”的评论

这个作者真是见不得人说,人就说一句bettl不好,都不算是批评,你说白了就是个生意人,和气生财,就这么毫无痛点的一句话,你干嘛要骂人啊,真是眼睛大肚子小!
又一个小号。。为了诋毁我,oschina很多僵尸帐号,我都无语了。
我不是生意人,我上班外还搞开源,并多年来一直支持开源,还探索SpringBoot,并贡献出来我的认知。你贡献了什么,就上嘴皮和下嘴皮吗?注册一个马甲,然后再骂一下开源作者,你是现实生活中的弱智和傻逼
叮当王子
叮当王子
这个作者真是见不得人说,人就说一句bettl不好,都不算是批评,你说白了就是个生意人,和气生财,就这么毫无痛点的一句话,你干嘛要骂人啊,真是眼睛大肚子小!
j
joydon

引用来自“开源中国首席董事长”的评论

beetl 是什么
我大概知道一点。反正是吹得很牛的什么模板引擎。据说外星人都在用。反正是ET都爱的。
聊聊Spring boot2.X开发环境搭建和基本开发

对Spring Boot的开发环境进行搭建,并对它的特点做进一步的了解,才能更好地对Spring Boot有更深入的介绍。但是无论如何都需要先来搭建Spring Boot的工程。 搭建Spring Boot开发环境 使用Spr...

异步社区
08/06
0
0
深入 Spring Boot:编写兼容 Spring Boot1 和 Spring Boot2 的 Starter

原文出处:hengyunabc 前言 Spring Boot 2正式发布已经有段时间,应用升级之前,starter先要升级,那么如何支持Spring Boot 2? 为什么选择starter同时兼容spring boot 1和spring boot 2 从用...

hengyunabc
07/29
0
0
spring boot 基础问题

https://www.oschina.net/question/24913332275473 Spring Boot是一套遵循的约定大于配置的体系,简化了很多组件的使用比如datasouce、JPA、SpringMVC等等,约定好自动化的配置,就可以使用功...

ka_ko
08/25
0
0
spring boot框架学习6-spring boot的web开发(2)

本章节主要内容: 通过前面的学习,我们了解并快速完成了spring boot第一个应用。spring boot企业级框架,那么spring boot怎么读取静态资源?如js文件夹,css文件以及png/jpg图片呢?怎么自定...

凯哥java
2017/11/06
0
0
Spring Boot和Spring Cloud学习资源推荐

比较好的学习资源,分享一下。 1、Spring Boot官方文档:http://projects.spring.io/spring-boot/ 2、Spring Cloud官方文档:http://projects.spring.io/spring-cloud/ Spring Boot学习地址 ...

懂得-奉献
2017/10/20
0
1

没有更多内容

加载失败,请刷新页面

加载更多

storm 环境搭建

1.下载解压 下载地址:http://storm.apache.org/downloads.html

MrPei
9分钟前
0
0
Python Base - 读写文件,字符串拼接,单引号

字符转义 读写文件cvs 字符串拼接,替换 import csvcsv_file_name = 'cardbin.csv'# insert into `card_bin_code` (name_of, code_of, card_no_prefix, bank_code) values ('中国银行......

园领T
10分钟前
0
0
基于JQUERY BOOTSTRAP 最简单的loading遮罩层

<%--loading遮罩层--%><div class="modal fade" id="loadingModal" backdrop="static" keyboard="false">   <div style="width: 200px;height:20px; z-index: 20000; position: abs......

颖辉小居
11分钟前
0
0
springboot+kafka

1,首先springboot对kafka的支持也很好,同样是在配置文件中配置好参数,然后就可以直接使用。先说一下,很简单,,,不要怕 2,我用的依赖是 <dependency> <groupId>org.springframewor...

我真是小菜鸡
15分钟前
2
0
webservice动态客户端自我记录备份(spring boot)

动态客户端相比直接调用webservice的客户端代码要简单很多,但实际上很多工作是java自己替我们做掉了。简单记录一下内容,以备后续使用: pom文件只需要引入: <!-- CXF webservice --><de...

checkboxMan
21分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部