[java] SnakeYAML을 사용하여 YAML 파일의 세트값 처리하기

이번 블로그에서는 Java에서 SnakeYAML 라이브러리를 사용하여 YAML 파일의 세트(set)값을 처리하는 방법을 알아보겠습니다.

1. SnakeYAML 라이브러리 추가

먼저 Maven을 사용한다면, pom.xml 파일에 다음 의존성을 추가합니다.

<dependencies>
    <dependency>
        <groupId>org.yaml</groupId>
        <artifactId>snakeyaml</artifactId>
        <version>1.28</version>
    </dependency>
</dependencies>

Gradle을 사용한다면, build.gradle 파일에 다음 의존성을 추가합니다.

dependencies {
    implementation 'org.yaml:snakeyaml:1.28'
}

의존성을 추가한 후, 프로젝트를 빌드합니다.

2. YAML 파일 작성

SnakeYAML을 사용하여 YAML 파일의 세트값을 처리하기 위해서는 YAML 파일이 필요합니다. 아래는 예시로 사용할 test.yaml 파일입니다.

fruits:
  - apple
  - banana
  - orange

3. Java 코드 작성

이제 Java 코드에서 SnakeYAML 라이브러리를 사용하여 YAML 파일의 세트값을 읽어오는 방법을 알아보겠습니다.

import org.yaml.snakeyaml.Yaml;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.util.Set;

public class YAMLExample {
    public static void main(String[] args) {
        try {
            // YAML 파일 읽기
            Yaml yaml = new Yaml();
            FileInputStream inputStream = new FileInputStream("test.yaml");
            Set<String> fruits = yaml.load(inputStream);

            // 세트값 출력
            for (String fruit : fruits) {
                System.out.println(fruit);
            }
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        }
    }
}

위의 코드는 test.yaml 파일을 FileInputStream을 사용하여 읽어온 후, SnakeYAML의 load() 메서드를 사용하여 세트값을 Set으로 변환합니다. 그리고 세트값을 출력하는 간단한 예제입니다.

4. 결과 확인

Java 코드를 실행해보면 다음과 같은 결과를 확인할 수 있습니다.

apple
banana
orange

SnakeYAML 라이브러리를 사용하여 YAML 파일의 세트값을 처리하는 방법에 대해 알아보았습니다. YAML 파일의 다른 유형의 값을 처리하는 방법도 비슷하게 구현할 수 있으니 참고하시기 바랍니다.

참고 자료