내가 저지를 사용하여 출력하고자 나열된 필드 만 다음과 같은 JSON 해요 :Jersey 리소스에서 JSON을 생성하는 방법은 무엇입니까?
[
{
"name": "Holidays",
"value": "http://www.google.com/calendar/feeds/usa__en%40holiday.calendar.google.com/public/basic"
},
{
"name": "Personal",
"value": "http://www.google.com/calendar/feeds/myprivatefeed/basic"
}
]
을 내가해야하는 경우, 내가 JSON 그와 서라운드 수 { "피드"...}하지만,이를 가진 선택적인 것이 가장 좋을 것입니다. 이 정보를 Hibernate를 통해 검색된 Member POJO에 저장된 CalendarFeeds 목록에서 가져 오려고합니다. 여기에 간단한 POJO를이 : 현재, 내가 수동으로 캘린더와 JSON을 출력 CalendarResource라는 저지 자원을 가지고
public class Member {
private String username;
private String password;
private Set<CalendarFeed> calendarFeeds = new HashSet<CalendarFeed>();
}
public class CalendarFeed {
public enum FeedType { GCAL, EVENT };
private Member owner;
private String name;
private String value;
private FeedType type;
}
하는 정보 피드 :
@Path("/calendars")
public class CalendarResource {
@Inject("memberService")
private MemberService memberService;
@GET
@Produces(MediaType.APPLICATION_JSON)
public String getCalendars() {
// Get currently logged in member
Member member = memberService.getCurrentMember();
StringBuilder out = new StringBuilder("[");
boolean first = true;
for (CalendarFeed feed : member.getPerson().getCalendarFeeds()) {
if (!first) {
out.append(",");
}
out.append("{\"");
out.append(feed.getName());
out.append("\":\"");
out.append(feed.getValue());
out.append("\"}");
first = false;
}
out.append("]");
return out.toString();
}
}
하지만 난 갈 방법을 잘 모르겠어요 이것을 자동화하는 것에 대해. Jersey을 사용하기 시작했으며이를 사용하여 JSON을 반환하는 방법이 명확하지 않습니다. 이 방법을 내장 한 것처럼 들리지만 내 POJO에 주석을 추가해야하는 것처럼 보입니다. 또한 잭슨을 사용할 필요가 있다고 말하는 사람들을 읽었습니다. 나는 인터넷 검색을 해왔고 Jersey 리소스에서 JSON을 반환하는 좋은 간단한 예제를 찾지 못하는 것 같습니다. 누구든지 알고 있습니까? 아니면 위의 예제에서 JSON을 만들기 위해 Jackson 또는 Jersey를 사용하는 방법을 보여줄 수 있습니까?
감사합니다. 이 솔루션은 간단하고 우아합니다. – tonga