gpt4 book ai didi

java - 如何使用 Java 中的 Rest 模板从 JSON 中提取数据

转载 作者:行者123 更新时间:2023-12-02 01:23:14 24 4
gpt4 key购买 nike

我必须从 https://newsapi.org/v2/top-headlines?sources=bbc-news&apiKey=19acc3a371d145ecb37a093f9985ea21 中提取前 5 篇文章,得到这样的结果:

{
"total": 5,
"articles": [
{
"source": "Ilmessaggero.it",
"title": "Title",
"author": "Author",
"url": "URL"
}
]
}

我这样做了,将所有 JSON 作为字符串作为本地主机的输出...

@RequestMapping("/news")
public Article connection() {

return restTemplate.getForObject
("https://newsapi.org/v2/top-headlines?sources=bbc-news&apiKey=19acc3a371d145ecb37a093f9985ea21", Article.class);

本地主机中的结果是:

{"source":null,"title":null,"author":null,"url":null}

但是现在的问题是,如何将数据放入文章列表中?我如何将它们保存到 mongodb 中?感谢您的努力

最佳答案

我解决了!简而言之,Article 的 NewsAPI json 有一个名为 Source 的字段,我试图将其解析为字符串,但事实并非如此!事实上,它是用另一个对象描述的字段!我只需创建一个名为 Source 的类,并带有 id 和名称,它就可以工作了!感谢大家的努力!

以下是类的代码:

public class Article {

private Source source;

private String author;

private String title;

private String url;

//getters and setters

新闻,其中包含文章列表:

public class News {

private int totalResults;

private List<Article> articles;

//getters and setters

以及来源,在文章中称为:

public class Source {

private String id;

private String name;

//getters and setters

就是这里了!解析代码与答案相同。只需将返回类型(Article)更改为News,并将getForObject的Article.class参数更改为News.class

关于java - 如何使用 Java 中的 Rest 模板从 JSON 中提取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57604384/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com