Springboot

YML파일 이해하기

25G 2021. 12. 9. 10:54

YML파일 이해하기

 

음료 공장을 만드는 기술자

1. 두 번째 공장

2. 공장 입구는 서쪽

3. 음료 요청은 전부 한글 문서로 변경해서 받는다.

4. 음료는 전부 콜라로 만들어서 출시된다.

5. 음료 총고는 컨테이너 박스를 사용한다.

6. 음료는 요청에 따라 페트병, 캔, 병으로 출시된다.

7. 공장이 재가동 될때 기존에 만들어졌던 음료는 버리지 않는다.

8. 음료 요청 시 A4용지 2장 이상의 문서는 받지 않는다.

9. 음료 요청은 아무나 할 수 없다. 암호를 아는 사람만 요청한다.

이런 문서와 규칙에따라서 기술자는 음료공장을 만들듯이

 

스프링 프레임워크에서 YML파일이란?

스프링 프레임워크로 공장을 만들 것인데 이 공장을 만들기 위한 문서다.

스프링 프레임워크 서버가 만들어질 때 스프링에서 이 YML파일을 참고해서 구축이 되는 것이다.

 

server:
  port: 8080
  servlet:
    context-path: /
    encoding:
      charset: utf-8
      enabled: true
    
spring:
  mvc:
    view:
      prefix: /WEB-INF/views/
      suffix: .jsp
      
  datasource:
    driver-class-name: org.mariadb.jdbc.Driver
    url: jdbc:mariadb://localhost:3306/photogram?serverTimezone=Asia/Seoul
    username: korea
    password: korea1234
    
  jpa:
    open-in-view: true
    hibernate:
      ddl-auto: create
      naming:
        physical-strategy: org.hibernate.boot.model.naming.PhysicalNamingStrategyStandardImpl
    show-sql: true
      
  servlet:
    multipart:
      enabled: true
      max-file-size: 2MB

  security:
    user:
      name: test
      password: 1234   

file:
  path: C:/workspace/springbootwork/upload/

위와 같은 YML설정 파일이 있다고 해보자 위 설계도를 음료공장 기술자에 빗대어 풀어서 설명해 보자면

1. 두 번째 공장

어떤 공장이냐면"/"로 오면 우리 주소로 올 수 있다.

 

2. 공장 입구는 서쪽

공장의 입구는 8080 포트이고

 

3. 음료 요청은 전부 한글 문서로 변경해서 받는다.

encoding은 UTF-8로 하겠다.

 

4. 음료는 전부 콜라로 만들어서 출시된다.

spring.mvc.view prefix subfix: view리졸버 설정

- 어떠한 요청이 온다면 위 주소에 jsp파일로 응답하겠다.

- 상황에 따라서 콜라도 출시하고 오렌지도 출시하듯이 템플릿 또한 jsp파일이 고정이 아니다.

 

5. 음료 창고는 컨테이너 박스를 사용한다.

-음료 창고(DB)는 mariaDB를 사용한다.

 

6. 음료는 요청에 따라 페트병, 캔, 병으로 출시된다.

-JPA설정

    -ORM기술로 원하는 요청을 동적으로 할 수 있다.

 

7. 공장이 재가동될 때 기존에 만들어졌던 음료는 버리지 않는다.

-JPA설정에서 ddl-auto:update를 빗대어 표현한 말

    -서버가 제 가동될 때마다 데이터베이스에 적혀있는 데이터 스키마 테이블이 그대로 유지가 된다는 뜻.

-create로 바꾸면 서버가 제 가동될 때 데이터베이스 데이터가 다 패기 처분된다.

 

8. 음료 요청 시 A4용지 2장 이상의 문서는 받지 않는다.

-servilet에서 2mb 이상의 데이터는 받지 않겠다.

 

9. 음료 요청은 아무나 할 수 없다. 암호를 아는 사람만 요청한다.

-security

    -security의 비밀번호를 아는사람만 접근할 수 있다.

 

 

yml파일은 위와 같이 스프링 서버가 구축될 때의 설정들을 YML파일에서 스프링에게 설계도를 알려주는 것이다.

'Springboot' 카테고리의 다른 글

CSRF토큰  (0) 2021.12.11
http쿼리스트링, 주소 변수 매핑  (0) 2021.12.09
STS4툴에서 github 프로젝트 가져오기/javascript환경설정  (0) 2021.12.08
MessageConverter란?(Jackson)  (0) 2021.08.22
톰켓이란?  (0) 2021.08.20