Java 使用jersey的根元素
我必须得到一个json格式的ArrayList,我缺少的是根元素,事实上我得到了这个json:Java 使用jersey的根元素,java,json,eclipse,jersey,Java,Json,Eclipse,Jersey,我必须得到一个json格式的ArrayList,我缺少的是根元素,事实上我得到了这个json: [{"age":27,"firstName":"Lorenzo","id":1,"lastName":"Volponi"},{"age":60,"firstName":"Alberto","id":2,"lastName":"Volponi"}... 我想我得买点像这样的东西 ["contatti": {"age":27,"firstName":"Lorenzo","id":1,"lastName"
[{"age":27,"firstName":"Lorenzo","id":1,"lastName":"Volponi"},{"age":60,"firstName":"Alberto","id":2,"lastName":"Volponi"}...
我想我得买点像这样的东西
["contatti": {"age":27,"firstName":"Lorenzo","id":1,"lastName":"Volponi"},{"age":60,"firstName":"Alberto","id":2,"lastName":"Volponi"}...
我在eclipse上使用jersey,下面是我的web服务:
@Path("/jsonServices")
public class JerseyRestService {
public ArrayList<Student> Rubrica=new ArrayList<Student>();
@GET
@Path("/print/{name}")
@Produces(MediaType.APPLICATION_JSON)
public ArrayList<Student> produceJSON( @PathParam("name") String name ) {
setRubrica();
ArrayList<Student> Risultati=new ArrayList<Student>();
int cc=1;
for(int i=0; i< Rubrica.size();i++){
String nome=Rubrica.get(i).getFirstName();
String cognome=Rubrica.get(i).getLastName();
if(Rubrica.get(i).getFirstName().equals(name)|| Rubrica.get(i).getLastName().equals(name))
{
Risultati.add(Rubrica.get(i));
}
}
return Risultati;
}
@GET
@Path("/print")
@Produces(MediaType.APPLICATION_JSON)
public ArrayList<Student> rubica() {
setRubrica();
return Rubrica;
}
public void setRubrica(){
Rubrica.add(new Student("Lorenzo","Volponi",27,1,"0712811157"));
Rubrica.add(new Student("Alberto","Volponi",60,2,"0712811157")); ...
}
}
@Path(“/jsonServices”)
公共级运动衫服务{
public ArrayList Rubrica=新的ArrayList();
@得到
@路径(“/print/{name}”)
@产生(MediaType.APPLICATION_JSON)
公共ArrayList produceJSON(@PathParam(“名称”)字符串名称){
毛地黄();
ArrayList Risultati=新的ArrayList();
int cc=1;
对于(int i=0;i
谢谢你你建议的第二个代码片段不是有效的JSON.mmm应该是什么?第一个是正确的。您将返回一个映射到JSON数组的
ArrayList
;Map h=p.parseJSON(新的InputStreamReader(输入));ArrayList myList=(ArrayList)h.get(“DocumentType”);因此它需要一个“DocumentType”,或者更改该代码以将JSON解析为数组,或者更改您的jersey代码以返回一个POJO,该POJO包含名为DocumentType
的成员。您建议的第二个代码段不是有效的JSON.mmm应该是什么?第一个是正确的。您将返回一个映射到JSON数组的ArrayList
;Map h=p.parseJSON(新的InputStreamReader(输入));ArrayList myList=(ArrayList)h.get(“DocumentType”);因此,它需要一个“DocumentType”,或者更改该代码以将JSON解析为数组,或者更改jersey代码以返回一个名为DocumentType
的成员的POJO。