java - 在 Spring Social Tweeter 中,JSON 如何成为 Tweet,以及 RestTemplate.getObject<T> 如何工作?

标签 java spring rest spring-social-twitter

大家。

Spring Social Twitter中,我们使用RestTemplate.getObject<T>()从 REST 端点检索和反序列化数据。它完成了它的工作并且非常整洁!但是它是如何做到这一点的呢?

如何将 JSON(源 1)转换为 .JAVA(源 2)。

当我注意到“坐标”位于 TweetData 内部,而不是作为 Tweet 的属性时,就出现了这个问题。

感谢您提前提供的帮助!

编辑 感谢 @Sotirios Delimanolis 先生的提示,我找到了进行反序列化的类和答案并将其发布。

最佳答案

Spring 使用 HttpMessageConverter 的集合将请求或响应正文内容转换为自定义类型的实例。对于 JSON 内容类型,Spring 有 MappingJackson2HttpMessageConverterGsonHttpMessageConverter (取决于您的版本)。

假设您的意思是 RestTemplate#getForObject ,您将目标类型指定为 Class 参数。 Spring 会将该目标类型传递给适当的转换器并执行反序列化。

关于java - 在 Spring Social Tweeter 中,JSON 如何成为 Tweet,以及 RestTemplate.getObject<T> 如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29420349/

相关文章:

Spring - Java EE 用户在身份验证后仍然为空

java - Spring + Scala + 匿名 block 或类

spring - 如何在 Spring MVC REST Controller 中访问 HTTP header 信息?

c# - 如何在 C# 中访问 XML 字符串值?

java - 使用Java中的xpath查询表达式获取XML中根元素的属性

java - 执行查询时出现 MyBatis NumberFormatException

java - 具有不同参数的 Spring Prototype bean

performance - 如何使 Symfony2 使用连接 : Keep-Alive? 返回 HTTP 响应

java - 如何从字符数组创建单词

java - 如何从多个具有相同名称的提交按钮中进行选择(HtmlUnit,Java)