[Spring 실습] 이커머스 백오피스 프로젝트

2025. 11. 3. 21:02·Spring/Spring 실습

내배캠 수강 중 드디어 본격적인 첫 팀 프로젝트를 경험하게 되었다. 

 

문제의 요건에 따라 API 명세서를 작성하고, WBS & Task 를 통해 계획을 수립 및 이행하는 과정을 설계하면서 전반적인 팀 프로젝트의 큰 진행방향을 다시 알게 되었다.

 

이번에 맡아서 진행하게된 부분은 고객에 관한 CRUD 구현과정이었고 그 과정에서 챙겨봐야할 내용들을 정리하고 넘어가고자 한다.

 

💡 어느 개념이 이해가 되지 않았는가

  • List를 통한 응답과정과 그 범위가 어느정도인지 이해가 되지 않았음 
    • 단순한 List<User> 는 전체 데이터를 한번에 보내주는 방식(데이터가 적을때 유용)
    • 페이징(Page)은 List + 메타정보(page, size, totalElements)를 같이 보내는 방식
      → PageResponse 구조로 감싸서 응답해야 함
    • 우선은 List 형태의 ResponseBody를 잘 받아내는 과정을 구현하기 위해 페이징 기능구현은 미룬 상태로 응답처리과정만 테스트를 진행하였음

 

  • 환경변수의 사용법과 개념을 처음 경험해봐서 어떤 식으로 활용되어야 하는지 알아야 했음
    • 우선 public으로 공유되면 안되는 개념의 값들을 Key-Value 형식으로 관리하는 개념
    • git.ignore 을 통해 별도로 관리가 필요한 정보의 값들을 관리할 수 있다는 장점을 갖춤
      → 혹여나 .env 파일이 한번이라도 추적되는(commit) 상황이 벌어진 이후의 진행 방향은 아래와 같음
      기존 .env 파일을 삭제, 삭제된 로그를 commit 처리 (commit message example : Fix : stop tracking .env file)
      이후 .env 파일을 재생성 후 기존 암호화해야할 내용들을 담음

 

  • AccessToken 인가 기반의 경우 DTO(Request dto) 에서 처리할 수 없는 부분인지 궁금했음
    • Dto에서 가능한 제약 - 입력값 검증 (Validation) 
      • 입력값에 대해 참 거짓 또는 비어있는지에 대한 검증까지의 기능 구현은 가능함
    • AccesToken에 들어있는 ROLE_CUSTOMER , ROLE_ADMIN 같은 권한 정보는
      HTTP 요청 정보(Authorization) → SecurityContext에 담긴 상태로, DTO 생성 시점에는 접근이 불가능
      보안로직은 비즈니스 / 보안 레이어 (Service or Security) 에 존재해야  함  

 

  • @PreAuthorize 를 통해 접근 가능한 권한을 제약조건으로 설정할 수 있었음

 

👍 무엇을 새롭게 알았는지

  • Git Branch 진행과 Pull을 통한 최신상태 업데이트 하는 과정들을 실제로 적용해보고 어떤 방식으로 진행되어야 하는지 알게 되었습니다.
    • Merge 진행 간에 Assignee, Reviewers 설정을 통해 Merge 이전에 의사소통 및 실반영하는 흐름까지의 이해를 갖추게 되었습니다.

 

'Spring > Spring 실습' 카테고리의 다른 글

[프로젝트] 실시간 데이터 처리 회고  (0) 2025.12.08
[프로젝트] 포인트 기반 결제 시스템 프로젝트 회고  (0) 2025.11.28
[Spring 실습] 점심 추천 & 투표 서비스 만들기 V2  (0) 2025.10.29
[Spring 실습] 점심 추천 & 투표 서비스 만들기 v1  (0) 2025.10.27
[Spring 실습] 강의 내용 진행 중 문제점 정리  (0) 2025.10.21
'Spring/Spring 실습' 카테고리의 다른 글
  • [프로젝트] 실시간 데이터 처리 회고
  • [프로젝트] 포인트 기반 결제 시스템 프로젝트 회고
  • [Spring 실습] 점심 추천 & 투표 서비스 만들기 V2
  • [Spring 실습] 점심 추천 & 투표 서비스 만들기 v1
stark77
stark77
하마의 IT 자기개발 이모저모, 백엔드 개발자로 거듭나기
  • stark77
    하마의 개발자 성장일기
    stark77
  • 전체
    오늘
    어제
    • 분류 전체보기
      • 컴퓨터구조와 운영체제
        • 컴퓨터구조
        • 운영체제
      • SQL 기초
      • Spring
        • 백엔드 기초
        • Spring 실습
      • JAVA
        • Java 실습
      • HTML&CSS
        • HTML&CSS 실습
      • Git&GitHub
        • Git&GitHub 실습
      • 내배캠 끄적끄적
        • Today I Learned
      • 유용한 툴 및 사이트 정리
      • 취미
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    프로세스와 쓰레드
    RestTemplate
    jsp
    객체지향
    Github
    String.format
    java
    경합조건과 교착상태
    WebSocket
    웹소켓
    BEAN
    Spriingboot
    Til
    다형성
    Java 문법기초
    algorithm
    HTML&CSS
    for문
    JPA
    Spring
    thymleaf
    git
    객체지향프로그래밍
    MVC
    네트워크 기초
    백엔드 기초
    SpringSecurity
    백엔드 기초다지기
    Stomp
    실시간 데이터 처리
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
stark77
[Spring 실습] 이커머스 백오피스 프로젝트
상단으로

티스토리툴바