티스토리 뷰

한 번도 문제가 생긴 적 없는 곳에서 삽질하는 상황이 생겼다.

회원 정보 수정 페이지로 넘어가질 않는 것이었다.

문제는 구현 코드는 문제가 없는 것 같고....

오늘은 머리도 아프고 도서관에서 퇴근하고 싶은 마음이 안드로메다까지 닿은 상태이니 빠르게 정리하겠다.

@RequestMapping("/users")로 user에 해당하는 URL을 지정하였다.

login 메서드에서 들어온 값으로 DB의 값을 호출해 담고,

update를 보면 로그인이 되어있는지 확인 후 model에 담아 값을 넘겼다.

핸들바를 사용하여 로그인되었을 때는 Edit Members와 logout만 보이게 해놓고

로그아웃 상태일 경우 login과 join만 보이게 설정하였다.

그 후 실행한 결과 제대로 mapping이 안되고 Edit Members page로 넘어가지 않았다.

id 값이 호출되지 않아 mapping이 안되길래 세션에 담긴 값을 확인하였다.

맨 아랫줄에 표시된 것처럼 데이터는 잘 들어갔다.

다만 Optional이다. [뭔가 이상한데?]

그래서 찾아보고 물어본 결과 Optional이라 데이터가 넘어가지 않는다고 한다.

이 문제를 해결하기 위해 맨 처음으로 한 삽질은 Optional·of의 사용이었다. 

이건 진짜 나의 삽질  경력 중에서도 최고로 바보스러운 삽질이 아닌가 싶다.

.of의 기능을 모른 채 그냥 이러면 되겠지? 하는 생각으로 쓴 거였는데 실패했다.

두 번째로는 Optional로 데이터를 받고 User로 형 변환을 하는 방식을 택했다.

변환이 안 되길래 삽질하다가 뒤에 roElseThrow로 예외처리를 해줘야 한대서 데이터가 없을 때 null 처리를 해준 결과

데이터가 잘 넘어갔다.

참고로 Optional.of는 Optional에 값을 넣을 때 사용하는 것 같다

 

- 회고 - 

일단 몸 상태가 좋지 않을 때는 쉬어주는 것도 필요하다는 걸 많이 느꼈다.

근데 한 달에 한 번씩 매번 이러면 곤란하니 어떻게 해야 할지 방안을 좀 찾아봐야 할 것 같고,

요즘 web 기반 프로젝트 한다고 java 문법 자체를 덜 다뤘더니 까먹은 기능도 몇 개 있는 것 같다.

진짜 사람은 망각의 동물이라는 말이 맞는 것 같은데 이런 점도 알고리즘을 풀면서라도

계속 보안해 나가야 할 것 같다.

댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함