스프링부트 독학-3장 스프링부트 3 구조 이해하기

jaegeunsong97·2023년 8월 30일
0

출처

신서영개발자님의 스프링부트 책

새롭게 알게된 내용 정리

스프링부트 3 구조

  • 계층이 존재 : 각자의 역할과 책임을 하는

    • 컨트롤러 : 프레젠테이션 계층
      • HTTP 요청 받고 비즈니스 계층으로 전송
    • 서비스 : 비즈니스 계층
      • 비즈니스 로직 처리
    • 리포지토리 : 퍼시스턴스 계층
      • 데이터베이스 관련 로직 처리
      • DAO 사용할 수도 있음
        • DAO : 데이터베이스와 상호작용하기 위한 객체
    • 데이터베이스
  • 프로젝트 구성

    • build.gradle : 빌드를 설정하는 파일, 의존성 플러그 같은 것을 설정할 때
    • setting.gradle : 빌드할 프로젝트의 정보를 설정하는 파일
  • 인메모리 DB : 시작할 때마다 초기화됨 따라서 DB에 더미데이터 넣기

dependencies {
    implementation 'org.springframework.boot:spring-boot-starter-web'
    testImplementation 'org.springframework.boot:spring-boot-starter-test'

    implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
    runtimeOnly 'com.h2database:h2'
    compileOnly 'org.projectlombok:lombok'
    annotationProcessor 'org.projectlombok:lombok'
}
  • application.yml
    • show-sql + format_sql : 애플리케이션 실행 과정에 데이터베이스에 쿼리할 일이 있으면 실행 구문을 모두 보여줌
    • defer-datasource-initialization : 애플리케이션을 실행할 때 테이블을 생성하고 data.sql에 있는 더미데이터 쿼리를 실행하기 함
spring:
  jpa:
    show-sql: true
    properties:
      hibernate:
        format_sql: true
    defer-datasource-initialization: true
profile
블로그 이전 : https://medium.com/@jaegeunsong97

0개의 댓글