Spring Boot 2.0正式发布,新特性解读
极客时间编辑部
讲述:丁婵大小:1.85M时长:04:02
北京时间 3 月 1 日,Spring Boot 2.0 正式发布。作为 Spring 生态中的重要开源项目,Spring Boot 旨在简化创建产品级的 Spring 应用和服务。
为了解此次更新的具体信息,InfoQ 特别邀请到 Spring Boot 专家、永辉云创架构师翟永超进行解读。在他看来, Spring Boot 2.0 之所以如此受期待,主要有以下几个原因:
支持最新的 Java 9;
基于 Spring 5 构建,Spring 的新特性均可以在 Spring Boot 2.0 中使用;
为各种组件的响应式编程提供了自动化配置,如 Reactive Spring Data、Reactive Spring Security等;
支持 Spring MVC 的非阻塞式替代方案 WebFlux 以及嵌入式 Netty Server;
Spring Boot 2.0 的发布,Spring Cloud Finchley 还会远吗?
除此之外,在 Spring Boot 2.0 中还有非常多其他令人振奋的新特性,比如:对 HTTP/2 的支持、新增了更灵活的属性绑定 API、对 Spring Security 整合的简化配置、Gradle 插件的增强、Actuator 模块的优化等。对于不同的使用者来说相信会有不同的关注点。
除了新特性,翟永超还分享了开发者们否有必要将 Spring Boot 1.x 升级到 2.x,以及在这过程中需要考虑和注意的问题。
1.Java 版本要求的变化
开发者在选择是否升级时,最先需要考虑的是 Java 版本的选择。Spring Boot 2.0 中提高了对 Java 版本的要求,开发者至少需要使用 Java 8 才能使用它。
另外,由于 Spring Boot 1.x 版本已经明确说明,未来没有对 Java 9 的支持计划,因此,你想将 Spring Boot 运行在 Java 9 上,那么必须升级到 Spring Boot 2.0。
2. 依赖组件的升级
Spring Boot 的 Starter 中整合了不少优秀的第三方组件,这些组件的升级也需要开发者们做好一定的考量,看是否会影响到使用,其中,最为关键的是以下几个组件的升级:
Tomcat 升级至 8.5;
Flyway 升级至 5;
Hibernate 升级至 5.2;
Thymeleaf 升级至 3;
3. 依赖重组和配置重定位
由于 Spring Boot 在构建 Starter POMs 的时候并非是扁平的一层结构,一些功能模块 Starter 之间是存在包含引用关系的。但是在 Spring Boot 2.0 中,WebFlux 的出现使得 Web 应用的解决方案将不再唯一,因此开发人员需要自己添加配置来决定是使用哪个模块实现 Web 应用。
除了类似上面的依赖重组之外,Spring Boot 2.0 中对于配置属性的重定位也是比较多的,这将导致一些原有的配置不再生效,就需要开发者们手工的去修改这些配置的 Key 来完成升级适配。
在 Spring Boot 2.0 的升级过程中,这部分内容将是大家需要做出较多修改的地方,因此建议多加关注。
对于升级是否会带来风险,翟永超表示完全不必有太多的顾虑,因为 Spring Boot 2.0 虽然新增了很多强大的新特性,但对于原有功能的支持并没有抛弃。因此,升级之后,就算不用任何类似 WebFlux 这样的新功能,继续使用 Spring MVC 来开发项目也是完全没有影响的。
那么对于 Spring Boot 此次的更新,你是怎么看的?如果你使用了 Spring Boot,是否会选择升级到 2.0 呢?
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
- 深入了解
- 翻译
- 解释
- 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
请先领取课程
免费领取
© 版权归极客邦科技所有,未经许可不得传播售卖。 页面已增加防盗追踪,如有侵权极客邦将依法追究其法律责任。
登录 后留言
精选留言
由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论