YAML

์Šคํ”„๋ง์€ ์„ค์ • ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ application.properties๋ฟ๋งŒ ์•„๋‹ˆ๋ผ application.yml์ด๋ผ๋Š” ํ˜•์‹๋„ ์ง€์›ํ•œ๋‹ค.

YAML(YAML Ain't Markup Language)์€ ์‚ฌ๋žŒ์ด ์ฝ๊ธฐ ์ข‹์€ ๋ฐ์ดํ„ฐ ๊ตฌ์กฐ๋ฅผ ๋ชฉํ‘œ๋กœ ํ•œ๋‹ค. ํ™•์žฅ์ž๋Š” yaml, yml์ด๋‹ค.(์ฃผ๋กœ yml์„ ์‚ฌ์šฉ)

  • application.properties

my.datasource.url=local.db.com
my.datasource.username=username
my.datasource.password=password
my.datasource.etc.max-connection=1
my.datasource.etc.timeout=3500ms
my.datasource.etc.options=CACHE, ADMIN
  • application.yml

my:
  datasource:
    url: local.db.com
    username: local_user
    password: local_pw
    etc:
      max-connection: 1
      timeout: 60s
      options: LOCAL, CACHE
  • YAML์˜ ๊ฐ€์žฅ ํฐ ํŠน์ง•์€ ์‚ฌ๋žŒ์ด ์ฝ๊ธฐ ์ข‹๊ฒŒ ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ ์ด๋ฃฌ๋‹ค๋Š” ์ ์ด๋‹ค.

  • YAML์€ ๊ณต๋ฐฑ์œผ๋กœ ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ ๋‹ค.(๋ณดํ†ต 2์นธ ์‚ฌ์šฉ)

  • ๊ตฌ๋ถ„ ๊ธฐํ˜ธ๋กœ :๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.

    • : ์ดํ›„์— ๊ณต๋ฐฑ์„ ํ•˜๋‚˜ ๋„ฃ๊ณ  ๊ฐ’์„ ๋„ฃ์–ด์ฃผ๋ฉด ๋œ๋‹ค.

์Šคํ”„๋ง์€ YAML์˜ ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ properties์ฒ˜๋Ÿผ ํ‰ํ‰ํ•˜๊ฒŒ ๋งŒ๋“ค์–ด์„œ ์ฝ์–ด๋“ค์ธ๋‹ค.

์ฐธ๊ณ  application.properties์™€ application.yml์„ ๊ฐ™์ด ์‚ฌ์šฉํ•˜๋ฉด application.properties๊ฐ€ ์šฐ์„ ๊ถŒ์„ ๊ฐ€์ง„๋‹ค. ์ด ๋‘˜์„ ํ•จ๊ป˜ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์ผ๊ด€์„ฑ์ด ์—†์œผ๋ฏ€๋กœ ๊ถŒ์žฅ๋˜์ง„ ์•Š๋Š”๋‹ค.(์‹ค๋ฌด์—์„œ๋Š” ์„ค์ • ์ •๋ณด๊ฐ€ ๋งŽ์•„์„œ ๋ณด๊ธฐ ํŽธํ•œ yml์„ ์„ ํ˜ธํ•œ๋‹ค.)

YML์—๋„ ํ”„๋กœํ•„์„ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

my:
  datasource:
    url: local.db.com
    username: local_user
    password: local_pw
    etc:
      max-connection: 1
      timeout: 60s
      options: LOCAL, CACHE
---
spring:
  config:
    activate:
      on-profile: dev
my:
  datasource:
    url: dev.db.com
    username: dev_user
    password: dev_pw
    etc:
      max-connection: 10
      timeout: 60s
      options: DEV, CACHE
---
spring:
  config:
    activate:
      on-profile: prod
my:
  datasource:
    url: prod.db.com
    username: prod_user
    password: prod_pw
    etc:
      max-connection: 50
      timeout: 10s
      options: PROD, CACHE
  • yml์€ ---๋กœ ๋…ผ๋ฆฌ ํŒŒ์ผ์„ ๊ตฌ๋ถ„ํ•œ๋‹ค.

Last updated