[Project] break를 안쓰다니…!
Categories: Project
📌 개인적인 공간으로 공부를 기록하고 복습하기 위해 사용하는 블로그입니다.
정확하지 않은 정보가 있을 수 있으니 참고바랍니다 :😸
[틀린 내용은 댓글로 남겨주시면 복받으실거에요]
자원 예약도 이제 다른 팀원 분이 어느 정도 구현을 다한 것 같아서 알림 기능을 붙이기로 했다. 차량 예약은 알림 기능 붙이고 회의실 예약 마저 붙이고 있는데 갑자기 에러가 발생….!했다
문제 발생
- 알림 시스템을 구현할 때,
NotificationService
클래스의createNotificationEntity
메서드에서BOOK_ROOM
유형의 알림을 처리하려고 했으나, 예기치 않은 예외가 발생함. BOOK_CAR
유형의 알림은 정상적으로 처리되었으나,BOOK_ROOM
유형에서는 처리되지 않고 예외가 발생했음.
열심히 Debugging
- NotifiacationMessage 구조가 다르면 발생할 수도 있으니까 혹시 CAR_ROOM으로 적었나했는데 아니였다.
-
분명 Book_Car은 잘되는 거 확인하고 회의실 예약에 알림 붙이려고 넘어간건데 되지 않았다.,.!
- 타입 같은데 왜 안되는 걸까요..
-
에러 보면 여기가 잡히길래 가서 확인해보았다.
-
아니 Book-car는 되는데 왜 BOOK_ROOM 만 안되는 건지..!
-
디버깅 때도 심지어 BOOK_ROOM 으로 잘 들어오는데 왜 안될까???
- 한참찾다가 break 가 없는걸 알게 되었다…ㅎ… break가 없어서 default문으로 넘어가서 저기서 예외가 발생하게 된 것이다,
해결 완료
-
회의실 신청하면
-
회의실 신청자에게 알림이 도착한다.
-
DB에도 잘 쌓이는 거 확인 완료!
한참을 디버깅하고 여러 가지 가능성을 생각하며 코드를 살펴보았지만, 결국 간단한 break
문 하나 때문에 오류가 발생했다는 사실을 알게 되었을 때 허탈함을 느꼈다. 작은 실수 하나가 큰 문제를 일으킬 수 있다는 것을 실감했고, switch-case
구문에서 break
문을 반드시 확인하는 습관을 가져야겠다고 다짐했다.
이번 경험을 통해 디버깅의 중요성과 세세한 코드 검토의 필요성을 느꼈다. 간단한 실수가 큰 버그로 이어질 수 있으니, 디버깅을 할 때는 큰 문제만 찾으려고 하기보다는 사소한 부분도 꼼꼼히 점검해야 한다는 교훈을 얻었다.
Leave a comment