[java] Gson 라이브러리에서 XML을 JSON으로 변환하는 방법은?
- XML을 먼저 Java 객체로 변환합니다. Java에서 XML을 처리하는 라이브러리인 JAXB를 사용하면 됩니다. JAXB는 XML 스키마를 기반으로 Java 클래스를 생성하고, 이를 사용하여 XML을 Java 객체로 변환할 수 있습니다.
다음은 JAXB를 사용하여 XML을 Java 객체로 변환하는 코드의 예입니다.
import javax.xml.bind.JAXBContext;
import javax.xml.bind.Unmarshaller;
import java.io.StringReader;
// XML을 Java 객체로 변환하는 메소드
public static Object xmlToJava(String xml, Class<?> clazz) throws Exception {
JAXBContext context = JAXBContext.newInstance(clazz);
Unmarshaller unmarshaller = context.createUnmarshaller();
return unmarshaller.unmarshal(new StringReader(xml));
}
// XML 문자열
String xml = "<root><name>John</name><age>30</age></root>";
// XML을 Java 객체로 변환
RootObject obj = (RootObject) xmlToJava(xml, RootObject.class);
- 변환된 Java 객체를 Gson을 사용하여 JSON으로 변환합니다. Gson은 자바 객체를 JSON 형식으로 직렬화하는 기능을 제공합니다.
다음은 Gson을 사용하여 Java 객체를 JSON으로 변환하는 코드의 예입니다.
import com.google.gson.Gson;
// Java 객체를 JSON으로 변환
Gson gson = new Gson();
String json = gson.toJson(obj);
위의 예제에서 obj
는 JAXB를 통해 XML에서 변환된 Java 객체입니다. json
변수에는 이 객체를 JSON 형식으로 변환한 결과가 저장됩니다.
이제 위의 두 단계를 조합하여 XML을 Gson을 사용하여 JSON으로 변환할 수 있습니다.