我有两个应用程序。 1应用程序是旧版本的spring,基于xml配置。没有使用注释。此应用程序存储过程用于 CRUD 操作。对于 Poc,我使用 Spring Boot 开发了一个简单的 CRUD 应用程序,我向它们公开了一个 Restful 服务。
现在我必须在旧应用程序中使用这个新的休息服务。怎么做?我希望使用 spring 2.5 中不可用的 Restful 模板。
最佳答案
正如您已经提到的,RestTemplate仅在 Spring 3.0 或更高版本中可用。
所以,我看到的基本选项是:
- 将您的 Spring 版本从 2.5.x 更新到至少 3.x
- 使用外部库来帮助消费休息服务
- 组成你的“自己的”
如果可以选择第一个,那就选择它。我无法真正评论第二个选项,但我很确定没有广泛使用的、积极维护的库使用与 spring 的模板模式相当的东西。
所以我会选择第三种选择。 “own”周围的引号是因为我会使用 spring RestTemplate 代码(从 spring 版本 3.0 开始)。由于 spring 使用 Apache 2.0 许可证,您可以使用并重新打包部分代码。
从 RestOperations 的精简版本开始(spring 3.0以后的版本在这个接口(interface)中添加了方法,例如使用ResponseEntity
,所以真正从3.0开始)。继续使用 RestTemplate 中的代码一开始你可能会感到沮丧,因为 spring 拖拽了 spring 3.0 中引入的相当多的类(MessageConverter
stuff,...)。但这是由于spring的模块化,而不是由于大量的代码。
只要确保您有一种将 spring 包映射到您自己的 namespace 的规范方法,这样就不会感到困惑。
使用您在其他项目中使用的模式(例如模板机制)合并 spring 的源代码是一种深入了解您通常使用的代码库的好方法;另一个好处。
关于java - 从spring 2.5开始如何调用restful服务,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37250668/