application.yaml에 작성한 내용 설명

2023. 12. 22. 18:15·Spring Boot
목차
  1. application.yaml에 다양한 설정들을 해주었는데
  2. 이 설정들이 무엇을 설정해 주는 것일까?

 

 

 


 

application.yaml에 다양한 설정들을 해주었는데

이 설정들이 무엇을 설정해 주는 것일까?

 

 


 

 

 

 

application.yml

spring:
  datasource:
    url: "jdbc:h2:mem://localhost/~/shopping;MVCC=TRUE"
    username: sa
    password:
    driver-class-name: org.h2.Driver

  jpa:
    hibernate:
      ddl-auto: create
    defer-datasource-initialization: true
    properties:
      hibernate:
        show_sql: true
        format_sql: true
        dialect: org.hibernate.dialect.H2Dialect

  sql:
    init:
      mode: always

  h2:
    console:
      enabled: true
      path: /h2-console
      
      
logging.level:
  org.hibernate.SQL: debug
  org.springframework: debug
  org.springframework.web: debug

server:
  servlet:
    encoding:
      force: true

 

 

 

spring.datasource 설정

 

1. spring.datasource.url : H2DB에 연결하는 JDBC URL을 정의
    (뒤에 MVCC=TRUE 옵션을 붙여주면 여러 개가 접근했을 때 좀 더 빨리 처리가 된다.)

 

2. spring.datasource.username : DB에 접속할 때 사용할 사용자 이름 지정

 

3. spring.datasource.password : DB에 접속할 비밀번호 설정

 

4. spring.datasource.driver-class-name : 사용할 JDBC 드라이버의 클래스 이름을 지정

 

 

 

spring.jpa 설정

 

1. spring.jpa.hibernate.ddl-auto : Hibernate가 DB 스키마를 생성하는 방법을 설정

 

2. spring.jpa.properties.hibernate.show_sql : Hibernate가 생성하는 SQL문을 보여줄지 여부 설정

 

3. spring.jpa.properties.hibernate.format_sql : SQL을 읽기 쉽게 포맷팅 하여 보여줄지 여부 설정

 

4. spring.jpa.properties.hibernate.dialect : 사용하는 DB의 Hibernate Dialect를 설정 (무슨 DB방식으로 SQL작성할까)

 

 

 

spring.sql 설정 ( 스프링 부트 애플리케이션에서 SQL 모드를 지정 )

 

1. spring.sql.init.mode : SQL 초기화 모드를 설정 (always는 실행할 때마다 DB 스키마나 테이블을 초기화하는 sql 실행)

 

 

 

spring.h2 설정

 

1. spring.h2.console.enabled : 내장된 H2DB 콘솔을 활성화할지 여부 설정 (web에서 볼 수 있게 할지)

 

2. spring.h2.console.path : H2DB 콘솔에 대한 URL 경로를 지정

 

 

 

spring.logging 설정  (애플리케이션 실행 중에 발생하는 이벤트나 정보를 기록)

 

1. spring.logging.level : 로깅 레벨을 설정한다. (해당 레벨에 따라 로그 출력이 달라진다.)

 

2. spring.logging.level.org.hibernate.SQL : Hibernate가 실행하는 SQL 쿼리 관련 로그 레벨을 지정

(하이버네이트의 SQL 로그를 debug모드로 사용한다. 하이버네이트가 생성하는 SQL이 로그에 다 출력한다.)

 

3. spring.logging.level.org.springframework : 스프링 프레임워크의 전반적인 로그 레벨을 지정

 

4. spring.logging.level.org.springframework.web : 웹 관련 로그에 대한 레벨을 지정

 

5. spring.logging.level.org.apache.coyote.http11= debug  :  HTTP 요청 메시지 log로 보기

 

(+ debug로 debug 정보를 로그에 남긴다.)

[show_sql: true]와 [org.hibernate.SQL: debug]의 차이점은

show_sql은 System.out으로 출력을 하고

org.hibernate.SQL: debug는 로그에 출력을 한다.

즉, 둘 중 하나만 사용하면 되는데 보통 후자를 선택한다.

 

 

 

server 설정

 

1. server.servlet.encoding.force : 서블릿의 인코딩을 강제로 지정 (웹 페이지에서 한글 깨짐 현상 해결)

 

 

 

 

 

 

+ Spring Boot에서 더미데이터 data.sql 적용이 안되는 문제

SpringBoot 2.5버전 부터는
spring.jpa.defer-datasource-initialization: true
spring.sql.init.mode: always
가 필요하다

저작자표시 비영리 변경금지 (새창열림)

'Spring Boot' 카테고리의 다른 글

자동으로 데이터의 생성일, 수정일, 생성자, 수정자 저장하기 (Auditing)  (1) 2024.01.22
상태 코드 반환하기  (0) 2024.01.18
서버 정지할 때 Build cancelled while executing task 에러 해결하기  (0) 2023.12.18
Spring Boot 프로젝트에서 build.gradle 파일 역할  (0) 2023.12.13
IntelliJ에서 한글이 깨져서 출력 되는 현상 고치기  (0) 2023.11.25
  1. application.yaml에 다양한 설정들을 해주었는데
  2. 이 설정들이 무엇을 설정해 주는 것일까?
'Spring Boot' 카테고리의 다른 글
  • 자동으로 데이터의 생성일, 수정일, 생성자, 수정자 저장하기 (Auditing)
  • 상태 코드 반환하기
  • 서버 정지할 때 Build cancelled while executing task 에러 해결하기
  • Spring Boot 프로젝트에서 build.gradle 파일 역할
아-니지
아-니지
아-니지
성장 기록.zip
아-니지
  • 분류 전체보기 (266)
    • Language (76)
      • Java (39)
      • Kotlin (0)
      • HTML (10)
      • CSS (17)
      • Java Script (10)
    • JPA (11)
    • Spring Boot (27)
    • QueryDSL (2)
    • SQL [DB] (8)
    • Docker (29)
    • AWS (19)
    • Git & GitHub (17)
    • DevOps (1)
    • Terminology (14)
    • CS (50)
      • 컴퓨터 구조 (12)
      • 운영체제 (11)
      • 자료구조 (11)
      • 알고리즘 (0)
      • 네트워크 (16)
    • Record (7)
      • 알고리즘 풀이 (4)
      • 자바 메서드 (3)
    • Self Q&A (5)
hELLO· Designed By정상우.v4.5.3
아-니지
application.yaml에 작성한 내용 설명

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.