[JAVA] List JSON 변환(Convert) /Jackson Lib 사용
List JSON 변환/Jackson Lib 사용
(1) List DATA
- List list = birthdayDao.selectGetBirthdaydList(map);
- list 결과
[{INDN=20000000, ORG_NM=Consumer Insurance, PSN_NAME=홍길동, PZC_NM=null}] |
(2) JSON DATA 로 변환
-변환방법
- (1) Jackson LIB import !
-필자가 사용한 Jackson Lib는
import org.codehaus.jackson.map.ObjectMapper;
/* Location: WEB-INF\lib\jackson-mapper-asl-1.9.13.jar * Qualified Name: org.codehaus.jackson.map.ObjectMapper * Java Class Version: 5 (49.0) * JD-Core Version: 0.7.1 */ |
******* 아 한참고생했다.....
jackson-mapper-asl 라이브러리만 import 한다면
IDE에서 writeValueAsString(); 사용시
incompatible types
required:java.lang.Throwable
found :org.codehaus.jackson.map.JsonMappingException
IDE에서 다음과 같은 에러가 난다.
catch 로 잡아도 안되, Throwable 해도 안되,
다른 json lib 써보려고 바꿔보고 난리를 치다 해결방법을 알아냈다.
jackson-mapper-asl 뿐만아니라 jackson-core-asl 까지 import 해줘야 한다는 것 (!!!)
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;
ObjectMapper mapper = new ObjectMapper();
String jsonList="";
try {
jsonList = mapper.writeValueAsString(list);
} catch (IOException e) {
e.printStackTrace();
}
- josnList결과
[{"INDN":"20000000","ORG_NM":"Consumer Insurance" ,"PSN_NAME":"홍길동","PZC_NM":null}] |
PS)
-결과값을 Map에 put
Map result = new HashMap();
result.put(“items”, jsonList); result.put(“code", "200"); result.put("channel_name", “Consumer Insurance”);
|
-결과
{channel_name=Consumer Insurance, items=[{"INDN":"20000000","ORG_NM":"Consumer Insurance","PSN_NAME":"홍길동","PZC_NM":null}], code=200} |