본문 바로가기
스파르타 내일배움캠프/TIL(Today I learned)

25.04.09 TIL - Spring 기초 프로젝트 3일차

by pandastic 2025. 4. 9.
반응형

 

 

목차

     

    1. 금일 고민 사항 및 의견 공유

    • 로그인 여부 체크 메서드가 필요한가?
      • 따로 메서드 만들 필요 없음. Filter로 로그인 체크 가능.
    • Session에 유저 정보를 어디까지 넣을 것인가?
      • 유저의 id(PK)만 담기⭕ DB 정합성 문제. user 정보가 필요하면 항상 DB 를 들려야함.
      • 👨‍🏫 피드백 : user db 한 번 들리는게 그리 성능 문제가 되지 않음.
      • ⭕ 서버 메모리 부담 낮음 (세션이 무거워지지 않음)
      • ⭕ 민감 정보 문제 해결
      • 유저의 정보를 담은 loginUserResponseDto를 담자❌ → DB 정합성 문제
        • user의 데이터가 수정됨 (회원 수정 등)
        • 수정된 user의 데이터가 session 내 유저 데이터엔 반영 안됨
        ❌ 유저의 민감정보가 노출됨(ex. 비밀번호)
      • ⭕ 유저 정보를 가져올 때 DB를 안들려도 됨.

    ✅ 결정

    • session에 유저의 PK만 넣도록 지정함.

    ⚠️ 추후 발전 방향

    • 세션에 유저 id(PK)를 넣을때 id를 암호화해서 넣기.
    • 하지만 당장 우리가 수행하기엔 엔티티를 모두 수정해야하기에 하지 않기로 결정.

     

    정합성

     - 데이터 간 관계나 규칙을 어기지 않고, 정확하고 일관되게 유지되는 상태.

     

    • 정합성이 깨지면 생기는 문제
      • 신뢰할 수 없는 데이터, 무결성 오류, 시스템 장애 가능.

     

    2. 트러블 슈팅

    1. 문제 상황

    • Domain 패키지 생성 후에 패키지들을 이동 시킨 후 PR을 진행하였고, Pull 받는 과정에서 에러가 발생하여 기존 작업 내용이 모두 사라지는 이슈.

     

    2. 해결 과정

    • 개인 작업 내용 Commit 후에 Fetch하기.
    • Pull into '사용중인  브랜치' Using Merge가 아닌 Merge 'origin/dev' into '사용중인 브랜치' 를 사용해야함.

    • 기존 dev 브랜치를 대체할 브랜치 추가 생성(tempdev)  후에 default로 설정.
    • 기능 완료 전까지 PR 하지 않기로 약속.

     

    3. 문제 발생 이유

    • Project 생성 시 기초 설정을 세세하게 하지 않은 업보가 아직도 따라오고 있다.
    반응형