Backend/SpringBoot

전반적인 프로젝트 구조

Dean83 2024. 11. 26. 15:26
  • 기본 구조
    • 아래의 4개의 구성은 모두 java 로 생성 
    • Entity 생성
      • DB 테이블과 1:1 매칭되는 클래스 
    • Repository 생성
      • Entity를 활용하여 DB에 저장, 혹은 값 검색
    • Service 생성
      • Repository의 DB 저장, 혹은 검색 함수를 직접적으로 호출하는, 한번 더 묶는 개념의 클래스
      • Service 생성자에서 Repository를 인젝션 받을 수 있도록 작성
    • Controller 생성
      • API 를 매핑하고 , 매핑된 함수마다 Service 를 통해 비즈니스 로직에 맞는 항목을 클라이언트로 리턴
      • Controller 생성자 에서 Service를 인젝션 받을 수 있도록 작성

 

 

  • DTO 활용
    • 성능에 영향을 미친다고 생각할 경우 DTO를 사용 할 수 있음. 그외에 Entity 항목을 직접 노출하기 싫을 경우도 사용가능 
    • Entity 생성 후, DTO 클래스를 별도로 생성
    • DTO <-> Entity 간 상호 변환이 가능한 Mapper 클래스 생성
    • Controller, Service 에서 필요에 따라 DTO, Entity 를 상호 변환하여 활용하도록 구현

 

 

  • 그외
    • yml을 통해 DB 접속 정보 등을 설정