Devin.KR

YAML TO PROPERTIES · SPRING CONFIG

YAML ↔ Properties

yml 설정, 한 줄 키로 펼쳐 볼까?

server: 아래 port: 8080 처럼 들여쓰기로 중첩된 YAML 을 server.port=8080 한 줄로 바꿉니다. 반대로 key=value 목록을 YAML 계층으로 다시 쌓아 설정 파일 형식을 옮길 때 씁니다.

  • 양방향 변환
  • 점 표기 키
  • 브라우저에서만 처리
  • 무료 · 가입 없음
바로 사용하기 ↓

MADE FOR YOUR WORK

이럴 때 쓰세요

설정 형식 통일

모듈마다 application.yml 과 application.properties 가 섞인 프로젝트를 한 형식으로 맞출 때 기존 값을 그대로 옮깁니다.

키 이름 정확히 찾기

환경 변수나 -D 옵션으로 덮어쓸 설정의 전체 키 이름이 필요할 때, YAML 을 펼쳐 spring.datasource.url 같은 경로를 바로 얻습니다.

\u 로 적힌 한글 읽기

native2ascii 로 \uD55C\uAE00 처럼 바뀐 오래된 properties 를 YAML 로 바꾸면 값이 한글로 풀려 무슨 내용인지 읽을 수 있습니다.

배포 설정 비교 준비

운영과 개발 YAML 을 각각 한 줄 한 키로 펼쳐 두면 diff 도구로 어느 값이 다른지 줄 단위로 비교할 수 있습니다.

STEP BY STEP

YAML ↔ Properties 사용 방법

이렇게 쓰세요

  1. 변환 방향 고르기

    변환 방향에서 'YAML → Properties' 또는 'Properties → YAML' 을 선택합니다.

  2. 입력 칸에 붙여 넣기

    YAML 은 들여쓰기 그대로, Properties 는 한 줄에 key=value 하나씩 넣습니다. # 이나 ! 로 시작하는 줄은 주석으로 건너뜁니다.

  3. 실행 누르기

    변환에 실패하면 배열·빈 값·키 충돌처럼 걸린 이유를 상태 줄에 알려 줍니다.

  4. 결과 복사

    결과 칸의 내용을 결과 복사 버튼으로 가져가 설정 파일에 붙여 넣습니다. 원본의 주석은 옮겨지지 않으니 필요한 설명은 다시 적으세요.

UNDERSTAND THE BASICS

YAML 계층과 properties 점 표기의 대응 규칙

properties 는 한 줄에 키 하나, 값 하나만 있는 평평한 형식입니다. 계층은 키 안의 점으로만 표현합니다. YAML 은 들여쓰기로 계층을 만들기 때문에, 들여쓰기 경로를 점으로 이으면 properties 키가 되고 점으로 끊어 다시 들여 쓰면 YAML 이 됩니다.

두 형식이 딱 맞지 않는 곳이 있습니다. properties 에는 목록 문법이 없어 Spring 은 list[0]=a 같은 관례를 쓰는데, 이 도구는 이 관례를 추측하지 않고 배열을 거부합니다. 키 자체에 점이 들어간 경우도 경로와 구분할 수 없어 받지 않습니다.

값의 타입도 다르게 다룹니다. YAML → Properties 는 JSON 호환 규칙으로 읽어 true·false·숫자만 특별하게 보고 yes, on 같은 값은 글자 그대로 둡니다. Properties 에는 타입이 없으므로 반대 방향에서는 모든 값을 문자열로 두고, 숫자처럼 보이는 값은 port: '8080' 처럼 따옴표를 붙여 내보냅니다.

java.util.Properties 를 InputStream 으로 읽으면 ISO-8859-1 로 해석해 한글 값이 깨집니다. 그래서 예전에는 한글을 \uXXXX 로 바꿔 적었습니다. 이 도구는 읽을 때 \uXXXX 를 한글로 풀지만, 내보낼 때는 한글을 그대로 둡니다.

YAML 과 properties 대응표
YAMLproperties이 도구
server: 아래 들여 쓴 port: 8080server.port=8080변환
msg: "a\nb" (줄바꿈 값)msg=a\nb이스케이프해 변환
name: ""name=변환
name: (값 없음 = null)없음오류로 거부
hosts: 아래 - a 목록hosts[0]=a (Spring 관례)지원 안 함
# 주석# 주석결과에서 빠짐

YAML ↔ Properties 사용 안내

중첩 YAML 설정을 점 표기 Properties로 변환하고 복원합니다. 배열과 점이 포함된 키는 지원 범위를 확인하세요.

YAML은 중첩 객체를 입력하고, Properties는 한 줄에 key=value를 입력하세요. 점으로 중첩 키를 구분하며 배열·빈 객체·null·키의 점·연속 줄은 지원하지 않습니다. Properties에서 가져온 값은 숫자처럼 보여도 문자열로 보존합니다.

QUICK EXAMPLE

YAML ↔ Properties 사용 예제

입력 · 시작

server:
  port: 8080

결과 · 확인

server.port=8080

주석과 서식은 유지되지 않을 수 있습니다. 배열과 점이 포함된 키는 결과를 검토하세요.

어떻게 구현했나

YAML 의 중첩 구조를 점으로 이은 키 하나로 펼칩니다. server: port: 8080 이 server.port=8080 이 됩니다. 반대 방향은 점으로 나눠 다시 중첩 객체로 쌓습니다.

키에 점·공백·등호·콜론·역슬래시가 들어 있으면 거부합니다. Properties 형식에서 그 문자들은 구분자라, 그대로 내보내면 다시 읽을 때 다른 키가 됩니다. __proto__ 같은 예약 이름도 막습니다 — 객체를 쌓는 과정에서 프로토타입을 건드리게 됩니다.

배열은 지원하지 않습니다. Properties 에는 배열 표기가 없고 프레임워크마다 흉내 내는 방식이 달라서, 대충 정하기보다 데이터 변환 도구로 보냅니다.

값의 줄바꿈·탭·역슬래시는 이스케이프하고, 되돌릴 때는 \uXXXX 까지 해석합니다.

BEFORE YOU FINISH

자주 하는 실수

버전 번호를 숫자로 적는다

version: 1.10 은 YAML 에서 소수 1.1 로 읽혀 결과가 version=1.1 이 됩니다. 버전·코드처럼 글자 그대로 남겨야 하는 값은 따옴표로 감싸세요.

값 없는 키를 남겨 둔다

key: 뒤를 비우면 YAML 에서는 null 이라 properties 로 옮길 값이 없어 오류가 납니다. 빈 문자열이 의도라면 key: "" 로 적으세요.

프로필 구분선을 함께 넣는다

--- 로 여러 프로필을 한 파일에 담은 YAML 은 한 번에 변환되지 않습니다. 문서마다 나눠서 넣으세요.

자주 묻는 질문

application.yml 을 application.properties 로 바꾸는 방법

변환 방향을 YAML → Properties 로 두고 yml 내용을 붙여 넣은 뒤 실행을 누르면 됩니다. 들여쓰기 경로가 spring.datasource.url=... 같은 한 줄 키로 펼쳐집니다.

YAML 배열(- 목록)은 왜 변환이 안 되나요?

properties 에는 배열 문법이 없고 프레임워크마다 흉내 내는 방식이 달라서 이 도구는 추측하지 않고 오류로 알려 줍니다. JSON·YAML 데이터 변환 도구를 쓰거나 list[0]= 형태로 직접 옮기세요.

Properties → YAML 결과에 따옴표가 붙는 이유는?

properties 값에는 타입이 없어서 모두 문자열로 보존하기 때문입니다. '8080' 처럼 따옴표를 붙여야 YAML 이 숫자로 바꿔 읽지 않습니다.

properties 파일의 한글이 \uXXXX 로 보여요

Properties → YAML 로 변환하면 \uXXXX 를 한글로 풀어 보여 줍니다. 반대 방향 결과는 한글을 그대로 두므로, 읽는 프로그램이 파일을 어떤 인코딩으로 여는지 확인하세요.

주석도 같이 옮겨지나요?

옮겨지지 않습니다. 두 방향 모두 값만 읽어 새로 쓰기 때문에 주석과 빈 줄 같은 서식은 결과에 남지 않습니다. 원본 파일은 따로 보관해 두세요.

입력한 데이터는 어디에서 처리하나요?

이 도구의 입력 데이터는 브라우저에서 처리하며 도구 기능을 위해 서버로 업로드하지 않습니다. 결과를 공유하기 전 민감한 정보가 없는지 확인하세요.

함께 쓰면 좋은 도구

전체 도구 바로가기

손으로 익히기

문서 · 데이터 변환

개발 실무

한국 개발 특화

API · 네트워크

이미지 · 색상