[java] Jackson의 XML 변환 지원

Jackson은 Java에서 JSON과 XML의 데이터를 변환하는 데 사용되는 인기 있는 라이브러리입니다. 이 라이브러리는 강력한 기능을 제공하여 객체와 XML 사이의 변환을 쉽게 처리할 수 있습니다.

Jackson 라이브러리 추가

Jackson을 사용하려면 먼저 Maven 또는 Gradle과 같은 빌드 관리 도구에서 Jackson 라이브러리를 추가해야 합니다.

Maven을 사용하는 경우:

<dependency>
    <groupId>com.fasterxml.jackson.dataformat</groupId>
    <artifactId>jackson-dataformat-xml</artifactId>
    <version>2.12.5</version>
</dependency>

Gradle을 사용하는 경우:

implementation 'com.fasterxml.jackson.dataformat:jackson-dataformat-xml:2.12.5'

의존성을 추가한 후 코드에서 Jackson을 사용하여 XML 변환을 수행할 수 있습니다.

Java 객체를 XML로 변환

Java 객체를 XML로 변환하려면 ObjectMapper를 사용해야 합니다. 다음은 Java 객체를 XML로 변환하는 간단한 예제입니다.

import com.fasterxml.jackson.databind.ObjectMapper;
import com.fasterxml.jackson.dataformat.xml.XmlMapper;

public class Main {
    public static void main(String[] args) throws Exception {
        ObjectMapper objectMapper = new XmlMapper();
        
        // Java 객체 생성
        MyObject myObject = new MyObject("example", 123);
        
        // XML로 변환
        String xml = objectMapper.writeValueAsString(myObject);
        
        // 출력
        System.out.println(xml);
    }
}

class MyObject {
    public String name;
    public int value;
    
    public MyObject(String name, int value) {
        this.name = name;
        this.value = value;
    }
}

위 예제에서 XmlMapper를 사용하여 MyObject를 XML 문자열로 변환하고 출력합니다.

XML을 Java 객체로 변환

XML을 Java 객체로 변환하려면 다음과 같이 ObjectMapper를 사용하면 됩니다.

String xml = "<MyObject><name>example</name><value>123</value></MyObject>";
MyObject myObject = objectMapper.readValue(xml, MyObject.class);

위 예제에서는 readValue 메서드를 사용하여 XML 문자열을 MyObject 객체로 변환합니다.

Jackson 라이브러리를 사용하면 Java 객체와 XML 간의 변환을 쉽게 처리할 수 있으며, XML 스키마와의 연동도 간편하게 수행할 수 있습니다.

결론

Jackson 라이브러리를 사용하면 Java에서 XML 데이터 변환을 쉽게 처리할 수 있으며, 다양한 옵션을 사용하여 정확히 필요한 형식으로 변환할 수 있습니다.

더 많은 정보를 원하시면 Jackson 공식 문서를 참고하시기 바랍니다.