Jersey/Jackson을 JSON에 대한 반환 객체로 사용하고 있습니다. 단일 개체에 대해서는 성공적으로 반환 할 수 있지만 목록에 대해서는 반환 할 수 없습니다. 이처럼Jersey/Jackson으로 JSON 객체 목록을 반환하는 방법
<dependencies>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-bundle</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-core</artifactId>
<version>1.19</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.19</version>
</dependency>
</dependencies>
내 모델 :
public class Person {
private String name;
private String surname;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSurname() {
return surname;
}
public void setSurname(String surname) {
this.surname = surname;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public Person(String name, String surname, int age) {
super();
this.name = name;
this.surname = surname;
this.age = age;
}
public Person() {
super();
}
@Override
public String toString() {
return "Person [name="+ name +", surname="+ surname +", age="+ age +"]";
}
내 서비스
어떻게이
의존성이 같은 내 예입니다 JSON
에 목록 객체 직렬화를 반환 할 좋아요 :
@Path("/getperson")
@GET
@Produces(MediaType.APPLICATION_JSON)
public Person getPerson(){
Person person = new Person(name, surname, age);
return person;
}
@Path("/getpersons")
@GET
@Produces(MediaType.APPLICATION_JSON)
public List<Person> getPersons(){
Person p1 = new Person("gosling", "james", 55);
Person p2 = new Person("torvalds", "linus", 48);
Person p3 = new Person("riche", "dennis", 60);
List<Person> persons = new ArrayList<Person>();
persons.add(p1);
persons.add(p2);
persons.add(p3);
return persons;
}
getPerson()은 잘 작동하지만 getpersons()는 비어있게됩니다. 내 시나리오에서