2013-08-02 4 views
1

JSON 데이터를 반환하는 끝점과 같은 REST가 있다고 가정 해 보겠습니다. 내 Java Play 응용 프로그램의 모델에서. HTML 템플릿과 비슷한 JSON 템플릿을 사용하여Play2 : JSON 콘텐츠를 전달하는 가장 좋은 방법

  1. : 나는 두 JSON 출력을 생성하는 방법을 발견했습니다. 다음과 같이 보일 수 있습니다.

    { 
        "name": "${user.name}", 
        "id": "${user.id}", 
        . . . 
    } 
    

    내가 좋아하는 점은 유연성입니다. 데이터 주위에 래퍼 (메타 데이터, 상태 메시지 등)를 쉽게 작성할 수 있습니다. 그리고 나는 어떤 물건이 전달되는지 쉽게 영향을 미칠 수 있습니다 (패스워드 필드, 마지막 로그인의 타임 스탬프 등은 물론 클라이언트에게 보이고 싶지 않습니다). 템플릿 변수의 내용은 유효한 JSON을 얻기 위해 올바르게 이스케이프 처리되어야한다는 요구 사항이 있습니다. 이 작업을 수행하는 가장 좋은 방법은 무엇입니까?

  2. 두 번째 방법은 모델의 POJO를 JSON으로 직접 직렬화하는 것입니다. 물론 이것은 더 빠르고 더 적은 노력으로 할 수 있습니다. 템플릿 접근 방식과는 달리 자동 프로세스이기 때문에 아마도 더 신뢰할 수 있습니다. 하지만 암호 및 메타 데이터 필드와 같은 데이터를 제외하려면 어떻게해야합니까? 관련 데이터 만 들어있는 jackson 구현을 사용하여 새 JSON 객체를 생성해야합니까? 아니면 각 모델 클래스에 대해 "json-model"을 만들고 직렬화하기 전에 각 요청에 대한 실제 모델을 json 모델로 변환해야합니까?

개인적으로 필자는 유연성 때문에 템플릿 방식을 선호합니다. 그러나 여러분 중 일부는 JSON, XML 등을 수동으로 구성하지 말라고 말할 것입니다. 그러나이 경우 실제로 이것은 문제가됩니까? 무엇을 권하고 싶습니까?

+0

자바가 있습니까? –

+0

아, 자바를 언급하는 걸 잊어 버렸습니다. – cara

답변

관련 문제