【问题标题】:The easiest way to implement REST API client and JSON parser in Java?在 Java 中实现 REST API 客户端和 JSON 解析器的最简单方法是什么?
【发布时间】:2012-10-06 16:11:25
【问题描述】:

我正在努力将这段代码从 JQuery 转移到 Java:

var url = 'http://gdata.youtube.com/feeds/api/videos/'; 

$.getJSON( url + '?v=2&alt=json-in-script&callback=?', {
    'q': q,
  }, function(data) {gotData(q, data);});

function gotData(q, data){
  for(var i in data.feed.entry){
     // print the data...
  }
}

它调用 YouTube API 并读取一些 JSON 结果字段。

在 Java 中实现这一点的最简单和最合适的方法是什么?由于我只需要一个 API 方法调用,因此我需要尽可能轻的解决方案。但我猜测无论我使用什么库,Java 中的代码都会变得更加复杂。

另外,我不想使用 Java 的 YouTube API 客户端,而是使用一些通用的 REST-JSON 解决方案,将来我可以将其用于更多的 API。

【问题讨论】:

    标签: java jquery json rest rest-client


    【解决方案1】:

    我建议将 Jersey-client 用于 REST,将 json-simple 用于 json 解析器。

    请查看 http://code.google.com/p/json-simple/ 获取 json 解析器和 http://www.ibm.com/developerworks/web/library/wa-aj-tomcat/ 以创建 REEST 客户端。

    【讨论】:

      【解决方案2】:

      您可以使用Apache HttpClientJackson Json

      DefaultHttpClient httpClient = new DefaultHttpClient();
      // Add query string into get request
      HttpGet getRequest = new HttpGet("http://gdata.youtube.com/feeds/api/videos/");
      
      getRequest.setHeader("Accept", "application/json");
      
      HttpResponse response = httpClient.execute(getRequest);
      
      ObjectMapper mapper = new ObjectMapper();
      Map<String, Object> jsonMap = mapper.readValue(response.getEntity().getContent(), new TypeReference<HashMap<String,Object>>() {});
      

      【讨论】:

        【解决方案3】:

        我会使用 google-gson Google Gson
        它是注解驱动的,非常好用。

        【讨论】:

          猜你喜欢
          • 2021-05-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2011-01-19
          • 2011-07-27
          • 1970-01-01
          • 2023-03-17
          • 1970-01-01
          相关资源
          最近更新 更多