마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Gson 사용시 Type에 대한 예외처리 가능한가요?

0 추천

안녕하세요.

Gson 을 사용하여 json을 parsing 하는 중인데..

예를 들어 서버에서 내려주는 json data가 (String 형식의 "") 

App 에서 정의해둔 class member type과 맞지 않을 경우 (HashMap<String, String>)

Exception이 발생하면서 나머지 데이타들도 parsing이 되지 않는데..

해당 데이타를 제외한 나머지라도 살릴수 있는 예외처리 방법이 있을까요?

String mapJsonData = "{\"testA\": \"A\",\"testB\":\"B\",\"testMap\": \"\"}";

// prettyPrinting
{
	"testA": "A",
	"testB": "B",
	"testMap": ""
}

public class MapData {
	
	public String testA = "";
	
	public String testB = "";
	
	public HashMap<String, String> testMap = new HashMap<String, String>();

        // ... getter & setter ....
}

Gson gson = new Gson();
// Gson gsonMap = new GsonBuilder().xxx().create();

try {
    gsonMap.fromJson( mapJsonData, MapData.class );
} catch (Exception e) {
    // java.lang.IllegalStateException occur
}


String 형식으로 들어온 jsonData를 HashMap<String , String > 으로 예외가 발생하더라도

다른 나머지 데이타라도 set을 진행 할 수 있으면 되는데...

어찌 안될까요? 

 

 

까리산적 (350 포인트) 님이 2016년 2월 26일 질문

1개의 답변

0 추천
http://www.javacreed.com/gson-annotations-example/ 이런 걸로 해결되지 않을까요?
쎄미 (162,410 포인트) 님이 2016년 2월 26일 답변
...