HomeAboutMeBlogGuest
© 2025 Sejin Cha. All rights reserved.
Built with Next.js, deployed on Vercel
♥️
2기 최종 프로젝트 팀별 공간
/
🌳
[팀 05] Forest
/
🪐
BE WorkSpace
/
📄
0808 온라인 회의록
📄

0808 온라인 회의록

날짜
Aug 8, 2022
Bicycle, 지역 코드 저장 방식ControllerAdvice 문제서비스 계층 Dto 반환 메서드 naming 문제테스트시큐리티시간 포맷 문제

Bicycle, 지역 코드 저장 방식

JPA level caching ✅
엔티티 레벨 전체에서 캐싱되는 것이다.
유연한 업데이트
시나리오 : Bicycle, 지역 코드를 관리자가 업데이트 해야 할 경우
코드 수정 필요함
 
HashMap
자바 자료구조 활용
유연하지 못한 업데이트
코드 수정 크게 필요 없음
 

ControllerAdvice 문제

  • ExceptionHandler 제어 클래스를 직접 만들자는 의견
    • 지나친 길이
  • 정말 필요로 할 경우에만 만들기로 ✅
 

서비스 계층 Dto 반환 메서드 naming 문제

  • entity → dto
    • 보통 서비스 계층에서 이루어진다.
    • dto 반환 메서드 네이밍 통일하자.
    • 조회 dto
      • get+ DTO 이름 + By+ 조회 식별자
      • get + paged + DTO이름 + By + 조회 식별자
      • 굳이 Result가 필요 없는 상황에서는 Info를 반환하는 것만으로 충분하다.
    • 조회 서비스 메서드 첫 단어 이름 ✅
      • load
        • service
      • get
        • controller
      • find
        • repository
 

테스트

  • API 테스트 인증 포함 유무
    • 해당 컨트롤러가 인증 로직을 거치는지 확인해보는 것이 매우 중요. ✅
  • restdocs
    • mock으로 반환되는 객체를 response에 어떻게 담을 것인가?
      • DTO를 반환하게 할 수 있다. ✅
  • 단위 테스트, 통합 테스트 실행 분리
    • 일단 보류
    • 단위 테스트 코드가 애초에 별로 없음
  • 초기 데이터 주입 문제
    • 배포 서버 admin 등
    • 일단 code로 데이터들로 넣고, 어느 정도 schema가 확정된 다음에는 sql로 진행한다는 의견.
    • 회원 가입이 완전하게 구현되고 프론트들이 테스트 하는 것이 바람직하지 않을까.
    • SQL로 생성을 하면 연관관계가 설정된 데이터를 테스트 할 수 없다.
    • 테스트용 공통된 데이터를 쓰느냐?
      • 각자 데이터를 알아서 쓰자! ✅
    • 각자 데이터를 만들 때 SQL을 쓰냐 코드를 쓰냐
      • SQL : 매우 피곤하다(SQL에서 생성된 ID를 직접 SQL 코드를 확인하고 가져와야 한다.). 데이터의 정합성을 보장하도록 하는 코드가 매우 까다롭다.
      • 코드 : 연관관계 설정이 상대적으로 쉽다. ✅
    • 2차 캐시 대상인 Bicycle, Address는 SQL 문으로 넣자(테스트 코드 상관없이) ✅

시큐리티

  • 토큰 문제
    • 토큰 발급 이후라면, 현재 DB 거치지 않고 토큰만 사용하여 검증함
    • 토큰을 받은 상태에서 탈퇴한 상황이라면?
    • 일단 Bob이 이슈로 등록 후, 나중에 리마인드하기로 ✅
    •  

시간 포맷 문제

  • Java의 시간 표준 ✅
    • 예상 소요 시간은 String으로
    • 나머지 시간들은 표준(Date) 사용