[java] SnakeYAML을 사용하여 YAML 파일의 객체 디시리얼라이즈하기
YAML은 사람이 가독성 있게 작성할 수 있는 데이터 직렬화 형식입니다. Java에서는 SnakeYAML 라이브러리를 사용하여 YAML 파일을 읽고 객체로 디시리얼라이즈할 수 있습니다.
SnakeYAML 라이브러리 추가하기
SnakeYAML을 사용하기 위해서는 먼저 해당 라이브러리를 프로젝트에 추가해야 합니다. Maven 프로젝트의 경우 pom.xml
파일에 다음 의존성을 추가합니다:
<dependency>
<groupId>org.yaml</groupId>
<artifactId>snakeyaml</artifactId>
<version>1.27</version>
</dependency>
Gradle 프로젝트의 경우 build.gradle
파일에 다음 의존성을 추가합니다:
dependencies {
implementation 'org.yaml:snakeyaml:1.27'
}
YAML 파일 읽기
SnakeYAML을 사용하여 YAML 파일을 읽고 객체로 디시리얼라이즈하려면 다음과 같이 작성할 수 있습니다:
import org.yaml.snakeyaml.Yaml;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
public class YamlReader {
public static void main(String[] args) {
try {
FileInputStream fileInputStream = new FileInputStream("example.yaml");
Yaml yaml = new Yaml();
// YAML 파일을 읽고 객체로 디시리얼라이즈
Object data = yaml.load(fileInputStream);
// 디시리얼라이즈된 객체 사용하기
// 예를 들어, Map<String, Object> 형태로 디시리얼라이즈될 수 있습니다.
Map<String, Object> myData = (Map<String, Object>) data;
// 디시리얼라이즈된 객체 출력하기
System.out.println(myData);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
}
}
위의 예제에서는 example.yaml
파일을 읽어온 후 SnakeYAML의 load
메소드를 사용하여 디시리얼라이즈한 다음, 디시리얼라이즈된 데이터를 출력하고 있습니다.
참고 자료
이제 SnakeYAML을 사용하여 YAML 파일의 객체 디시리얼라이즈하는 방법에 대해 알아보았습니다. SnakeYAML은 간편하게 YAML 파일을 읽고 객체로 변환할 수 있는 강력한 도구입니다. 자세한 사용법은 공식 문서를 참고하시면 됩니다.