Spring/기본 구성

3. Spring Boot 구조

초코chip 2024. 1. 18. 14:48

스프링 부트3 구조

프레젠테이션, 비즈니스, 퍼시스턴스 계층이 서로 통신하며 프로그램을 구성

  • 프레젠테이션 계층 - Controller : HTTP 요청을 비즈니스 계층으로 전송하는 역할
  • 비즈니스 계층 - Service : 서비스를 만들기 위한 로직을 처리
  • 퍼시스턴스 계층 - Repository  : DB관련 로직을 처리
    • DB에 접근하는 DAO 객체 사용

 

스프링 부트3 요청-응답 과정

  1. 클라이언트에서 요청
  2. 스프링 부트 디스패치 서블릿에서 URL 분석 -> 해당 요청을 처리할 수 있는 컨트롤러 찾기
    -> 컨트롤러를 찾았으면 디스패치 서블릿이 해당 컨트롤러에게 요청 전달
  3. 컨트롤러에서 비지니스, 퍼시스턴스 계층을 통해 필요한 데이터 가져옴
  4. 뷰 리졸버가 HTML 문서를 생성 or JSON이나 XML 등의 데이터 생성
  5. 해당 결과를 클라이언트에게 응답

 

개발 과정

기능 구현을 할 때 아래 단계를 거침

  1. 엔티티 생성: 로직에 필요한 데이터 모델을 정의
  2. 리파지토리 생성: 엔티티에 접근하고 조작하는 클래스 생성
  3. DTO 생성: 엔티티와 클라이언트 사이에 데이터를 주고받을 데이터 전송 객체 생성
  4. 서비스 생성: 비즈니스 로직 생성
  5. 컨트롤러 생성: HTTP 요청 처리하는 컨트롤러 생성