여론조사 결과 하나를 추가로 업데이트 한 후 앱을 실행했는데, 갑자기 앱이 켜지지 않는 오류가 발생했습니다.
다행히 원인은 금방 찾을 수 있었는데, 다음과 같았습니다.
현재 로직:
Vote22 앱 -> 서버 -> DB로 정보를 요청하는 형태입니다.
이 때 여론조사 결과의 경우 받아온 여론조사 정보에서
이를 위해서, 안드로이드 앱 코드는 다음과 같이 작성되어 있었습니다.
String[] monthEng = {JAN, FEB, MAR, ... , DEC};
public String getMonthEng(int month) {
return monthEng[month];
}
```
여기서 문제가 발생했는데, 실수로 월에 14라는 값을 입력했더니 OutOfIndex 오류가 발생해서, 앱이 켜지지 않고 비정상 종료 되었습니다.
이 부분은 사실 앱 코드가 아니라 DB에 insert할 때 해당 값이 적절한지 한 번 검토할 수 있게 해야할 것 같았습니다.
따라서 Spring 서버에서 월에 해당하는 값이 1 ~ 12의 범위 내에 있지 않다면 DB에 insert 하지 않도록 코드를 수정하였습니다.
예외처리가 얼마나 중요한지 알 수 있는 부분이었던 것 같습니다.