Spring JSON View 구현하기(1) - ResponseEntity

2013. 9. 24. 10:08 - 에릭투스

솔직히 구현은 아니고, Springframework가 구현해주는 것을 사용하는 방법정도 되겠다앗!!


Javascript가 주로 사용되기 때문에, 자주사용되는 JSON형식으로 서버와 통신하게 되는데.


그래서 작성한 예제는 간단히, 전자정부프레임워크를 이용하여 결과를 JSON View를 떨어뜨려주는 예제이다.






위 내용은 전체적인 예제에 대한 설명이고, JSON View를 설정하기 위한 방법이 두가지가 있다..

 1. ResponseEntity를 Return하는 방법.

 2. @ResponseBody를 사용하는 방법.


일단 ResponseEntity를 사용하는 방법은, 아래와 같이 Util을 만들어 사용했다.

객체(자주사용하는 List, Map, VO 등등)를 JSON형태로 Serializer(String으로 변환)한 뒤

Header에 JSON형태라 명시해주면, JSON View로 인식하게 된다.

package egovframework.com.cmm;

import net.sf.json.JSONSerializer;

import org.springframework.http.HttpHeaders;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;

/**
 * @version Revision: 1.0 2013. 8. 22.
 * @author hejin
 */
public class JSONResponseUtil{
	
	/**
	 * JSON View 화면 처리를 위해 JSON변환 후 ResponseEntity로 반환.
	 * @param obj
	 * @return
	 */
	public static ResponseEntity getJSONResponse(Object obj){
		String json = new JSONSerializer().toJSON(obj).toString();
		HttpHeaders responseHeaders = new HttpHeaders();
		responseHeaders.add("Content-Type", "application/json; charset=UTF-8");
		return new ResponseEntity(json, responseHeaders, HttpStatus.OK);
	}
	
	/**
	 * JSON View 화면 처리를 위해 JSON변환 후 ResponseEntity로 반환.
	 * @param obj
	 * @return
	 */
	public static String getJSONString(Object obj){
		return new JSONSerializer().toJSON(obj).toString();
	}
}

@RequestMapping("/nkia/queryResultList.do")
public ResponseEntity queryListResult(ModelMap model, @RequestParam Map param) throws Exception{
   Object result = queryService.selectFirstQuery( param );
   return JSONResponseUtil.getJSONResponse(result);
}


다른 카테고리의 글 목록

Workspace/Web Dev 카테고리의 포스트를 톺아봅니다