java - 从spring 2.5开始如何调用restful服务

标签 java spring rest

我有两个应用程序。 1应用程序是旧版本的spring,基于xml配置。没有使用注释。此应用程序存储过程用于 CRUD 操作。对于 Poc,我使用 Spring Boot 开发了一个简单的 CRUD 应用程序,我向它们公开了一个 Restful 服务。

现在我必须在旧应用程序中使用这个新的休息服务。怎么做?我希望使用 spring 2.5 中不可用的 Restful 模板。

最佳答案

正如您已经提到的,RestTemplate仅在 Spring 3.0 或更高版本中可用。

所以,我看到的基本选项是:

  1. 将您的 Spring 版本从 2.5.x 更新到至少 3.x
  2. 使用外部库来帮助消费休息服务
  3. 组成你的“自己的”

如果可以选择第一个,那就选择它。我无法真正评论第二个选项,但我很确定没有广泛使用的、积极维护的库使用与 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/

相关文章:

java - 使用 <context :annotation-config/> in ApplicationContext. xml 时自动连线注释不起作用

json - 在 Karate DSL 中,如何使用其他数据类型(例如 int、float、Big 等)的替换文本?

java - 在 ReSTLet 中检索资源 ID

c# - 无法解析为有效的类型或函数

使用 lambda 函数的 Java 并行化

java - 带有 DocumentFilter 的 CellEditor 永远不会被调用

java - 为什么我只从 SQS 队列收到一条消息?

java - 在多项目之间共享实体

spring - 在 Spring 拦截器中访问 session 范围变量

java - Mockito 空指针异常