전 장에서는 스프링의 주요 개념을 대략적으로 파악했다면,
이번에는 스프링 부트가 어떤 식으로 HTTP 요청을 받고 응답을 반환하는지 구조를 살펴본다.
스프링 MVC 구조로 알고있던 개념을 계층적으로, 그리고 이를 구현한 클래스로 설명을 하였다.
코드로는 어떤 디렉토리로 이루어져 있는지 대략적으로 알 수 있었다.
마지막에는 요청-응답사이클이 가볍게 나오는데 이 부분은 하나씩 뜯어서 포스팅으로 다룰 예정이다.
스프링 부트는 각 계층이 양 옆의 계층과 통신
하는 구조를 가지고 있다
각 계층의 의미와, 계층을 구현한 클래스는 아래와 같다.
계층(개념) | 구현 | 역할 |
---|---|---|
프레젠테이션 계층 | 컨트롤러 | http 요청을 받고 비즈니스 계층으로 전송 |
비즈니스 계층 | 서비스 | 비즈니스 로직 |
퍼시스턴스 계층 | 엔티티,DAO,리포지토리 | 데이터베이스 관련 로직 |
DB에 접근, 데이터 반환 |
의존성 추가
]빌드할 프로젝트의 정보를 설정
INSERT INTO member (id,name) VALUES (1, 'name1')
spring:
jpa:
# 앱 실행 과정에서 데이터베이스에 전송된 쿼리 확인
show-sql: true
properties:
hibernate:
format_sql: true
# 테이블 생성 후 data.sql 실행
defer-datasource-initialization: true
ctrl+f
로 create table 있는지 확인