迁移Struts1.x到什么?

Migration Struts 1.x to what?

我有一个使用 Struts 1.x 构建的应用程序,她的前端是 JSP 和 FLEX(Action-Script),我的想法是将前端更改为Angular 6. 我的后端不支持 REST。

Struts 支持 REST 的最佳选择是什么? 我应该只添加 Jersey,或者将整个应用程序升级到 Struts 2.x 或者更升级到 SpringMVC?

自从我完成 Struts 2 工作以来已经有一段时间了,但我记得,我设计的系统具有支持 Struts 2 [=17] 的业务层=] 支持 REST API。让 Struts 依次使用 REST 或以某种方式实现 REST 的想法对我来说似乎有点令人费解。

我建议您应该使用您的 Struts 代码并使用基础作为编写 REST API 的基础。在这项工作中,大部分底层代码应该是可重用的。然后编写 Angular 代码以使用新的 REST 接口。

事实上,您可能想按照我的方式解决问题:重构您的代码以支持业务逻辑层,该层给出了您希望上层 UI 层执行的操作的可靠定义.使用它作为您现有 Struts 代码的基础,作为您至少可以支持现有功能的概念证明。然后,您可以将该层用作 Angular UI 将使用的 REST API 的基础。然后,如果需要,您可以 运行 两者,因为用户会以较小的集合从一个迁移到另一个。这也将有助于解决您在新代码库中可能遇到的任何扩展问题,而不是仅仅 "flipping a switch" 并将每个人都放在新系统上,只是希望它支持负载。

Here’s a discussion on whether it is good to have struts 1 and 2 co-exist in your server. I had a similar situation as you and I started developing all the new REST APIs using struts 2 + REST plug-in 并让旧的 API 存在于 struts 1 中。当我定义更新的 REST API 替代旧的 struts 1 基础 API 时,我不赞成使用旧的 API并删除相应的代码。