Back-end/JAVA & Spring
[JAVA] JSONObject key 값이 null 일때 해결 방법
꼬바리
2021. 11. 15. 17:00
우리는 JSON parser/ object 등으로 제이슨 처리를 한다.
{
"gender" : "남성"
}
이러한 데이터는 쉽게
if(jsonObject.get("gender").equals("남성")){
// key값이 gender인 json Object 의 값 체크가 가능
}
키값을 넣고 체크 가능하다.
그치만 Key값이 null일때,
{
"gender" : null
}
널값을 가진 키라면 널포인트 익셉션 이 발생한다.
if(jsonObject.get("gender").equals("남성")){
//널포인트 발생
}else if(jsonObject.get("gender").equals(null)){
//error
}else if(jsonObject.get("gender").equals("null")){
//error
}else if(jsonObject.get("gender") == null){
//error
}else if(jsonObject.get("gender") == "null"){
//error
}else if(stingUtils.isBlank(jsonObject.get("gender"))){
//error
}
다양한 방법으로 시도 해봤지만 여전한 오류
다양한 시도끝이 해결방법은
Object 로 객체를 받아서 해결했다
Object gender = jsonObject.get("gender");
if(gender == null){
//널일때
}else if(gender.equals("남성")){
//값이 "남성" 일때
}
여기서 중요한건
if(gender == null)을 esle if 로 내려도 오류가 난다는것..
처음으로 널체크를 넣어줘야한다.. 꼭..
별거 아니지만 시간을 많이 뺴았은 JSON의 null체크
728x90
반응형