project wc
2024.12.02 ~ 2024.12.18 (17일)
총 4명
프로젝트 깃허브 링크
<Project 개요>
- 월드컵과 같이 토너먼트 방식으로 자신이 선호하는 것을 선택하여 최종적으로 이상형을 찾는 게임을 제공하는 웹페이지
프로그램 주요 기능
- 회원 관련(로그인, 로그아웃, 회원 가입, 정보 수정 등)
- 월드컵 생성, 플레이, 랭킹
<담당 업무>
- 월드컵 목록(메인 화면), 내가 만든 월드컵 화면
- 로그인 여부에 따라 상단 navigation bar 메뉴 동적 변화
- 월드컵 랭킹에서 댓글 기능
- 회원 정보 수정 화면
<문제 해결>
1. DB 설계
- 초기 DB 설계 과정에서 월드컵 경기 정보 엔티티와 월드컵 플레이 정보를 저장하는 엔티티 간의 상호 의존 관계가 발생했습니다.
- 상호 의존 관계 해결을 위해 중간 테이블 생성 등 방법을 찾아가는 과정입니다.
- DB 설계 완료 후 ERD

2. 메인화면 상단 navigation bar 관련


- 서버에서 사용자 정보를 비동기로 받기 위해 코드를 작성하던 중 발생한 일입니다.
- 받아온 사용자 정보를 가지고 자바스크립트로 조건문을 통해 노출되는 메뉴가 달라지게 하려고 했으나 적용이 되지 않았습니다.
- 자바스크립트 코드를 이리저리 수정해도 결국 잘되지 않아 SSR 방식으로 선회하는 등 꽤 시간을 소비했으나 알고 보니 간단한 문제였습니다.
- fetch로 받은 사용자 정보는 response.body에 있었는데 response에서 가져오는 바람에 생긴 일이었습니다.

3. 댓글 관련
- Repository delete 쿼리문을 작성한 다음 테스트 과정에서 댓글이 삭제되지 않는 과정에서 일어난 문제입니다.
- JPA 라이브러리를 사용 중이었고 영속성 컨텍스트의 캐싱에 대해 머리로는 이해하고 있었으나 실제 코드에는 적용하지 했습니다.
- 하이버네이트의 쿼리문 출력과 System.out.println의 중요성을 다시금 깨닫게 되었습니다.
4. 깃 커밋 관련
- 커밋 rebase, push 및 pull request 과정에서 발생한 일입니다.
- push 후 pull request를 통해 merge를 진행했는데 중복 커밋이 발생했습니다.
<사용 기술>
- Git 협업
- 메인 화면 디자인
- 월드컵 목록 출력 - 페이지네이션
- 로그인 여부에 따라 상단 navigation bar 메뉴 동적 변화
- 로그인 테스트
- 월드컵 검색
Share article