2013-11-26 50 views
3

我有一个JSON数据,如this。我想创建一个Restful Web服务,它可以生成类似上面链接的JSON输出。如何在java,tomcat,eclipse中创建JSON数据的Restful Web服务

我看着How to Create a Restful service for a Huge JSON data using Java eclipse Tomcat7.0

我要在上述条件补充一点:

{ 
status: "ok", 
count: 10, 
pages: 6, 
category:{ 

以前的答案是这样的,..

{ 
category:{/[ 

我想这

{ 
status: "ok", 
count: 10, 
pages: 6, 
category:{ 
+0

而不是让回答者运行给出从一个链接到另一个链接。你为什么不直接说明问题并告诉我们你卡在哪里。 – Nishant

+0

hellow先生,..我做了从上面的链接一个JSON RESTful Web服务中,我需要添加此{ 状态: “OK”, 数:10, 页:6, 类:{而不是{ 类别:{ – MLN

回答

6

看看这个答案

是如下图所示的典型JSON

{ 
    "name":"Ersin", 
    "surname":"Çetinkaya", 
    "age":"25", 
    "address":[{"city": "Bursa","country": "Türkiye","zipCode": "33444"}], 
    "phones": ["234234242","345345354"] 
} 
创建上述JSON

Java代码如下

public JSONObject getValues() 
{ 
    JSONObject jsonobj=new JSONObject(); 
    jsonobj.put("name","Ersin"); 
    jsonobj.put("surname","Çetinkaya"); 
    jsonobj.put("age","25"); 


    JSONArray obj = new JSONArray(); 
    HashMap rows=new HashMap(); 
    rows.put("city","Bursa"); 
    rows.put("country","Türkiye"); 
    rows.put("zipCode","33444"); 
    obj.put(rows); 
    jsonobj.put("address", obj); 

    JSONArray phobj = new JSONArray(); 
    phobj.put("234234242"); 
    phobj.put("345345354"); 
    jsonobj.put("phones", phobj); 

    System.out.println(jsonobj.toString()); 
    return jsonobj.toString(); 
} 
+0

感谢人正是我在找+1 :) – Simmant

1

最初的这几行可以添加额外的按键父jsonobj

jsonobj.put("status", "ok"); 
jsonobj.put("count", 10); 
jsonobj.put("pages", totalPages); 

jsonobj.put("category", categoryMap); 

你如何产生这些变量将取决于你在哪里得到你的数据。例如它是一个数据库吗?

计数和页面似乎表明有51-60个可用项目,每页10个项目和6个页面。

状态变量可被用于指示一个错误,因此另一种可能的值可以是:

jsonobj.put("status", "error"); 
jsonobj.put("errorcode", "101"); 
jsonobj.put("error message", "big database error"); 

这允许客户端优雅地检查在所述响应和捕获错误status字符串。

+0

这是好的先生,我是新的你可以给整个代码,如果可能的话,我的意思是我无法运行它。谢谢先生 – MLN

相关问题