首页 > 解决方案 > 从 Spring 4 迁移到 Spring 5 的困难

问题描述

计划将 Spring 4 项目迁移到 Spring 5。

我浏览了 spring 5 的特性,它有一些有趣的特性,比如 Webflux 、反应式编程......这可能会提高我的应用程序的性能。

我不确定迁移会有多困难。

Reg 项目复杂性: 1)更复杂的项目,有更多的 API 暴露和消耗。2) 与 Cassandra DB 连接。3)项目的规模有点大。

任何有关迁移困难的建议将不胜感激。

标签: javaspringspring-4

解决方案


如果你想从 Spring 4 迁移到 5 并开始使用 Spring Webflux 等特性,基本上你将不得不重写大部分代码。

您可以选择继续使用现有的注释或使用路由器功能(在我看来,与传统的注释方法相比,这太复杂了,不会给您太大的灵活性)。

您还必须更改从MyCustomClasstoMono<MyCustomClass>和 from Collection<MyCustomClass>to返回一个对象的所有接口Flux<MyCustomClass>。您的数据库可能不是关系数据库,因为所有现有驱动程序都在阻塞。为了获得最大的 WebFlux,您需要使用反应式数据库。

一般来说,你最好重写你的应用程序而不是迁移到 WebFlux。

你真的需要迁移吗?您是否遇到性能问题?如果当前的应用程序没有遇到任何问题,您可以考虑在 WebFlux 中创建新的应用程序。

看看 Josh Long 的这篇文章。也许你根本不需要 WebFlux。

总的来说,我是 Spring 的忠实粉丝,但是使用 WebFlux 并不容易,并且会有一些陡峭的学习曲线。


推荐阅读