Jackson xml json

时间:2023-03-09 14:36:42
Jackson xml json
public class XMLTest {

     private static XmlMapper xmlMapper = new XmlMapper();
     private static ObjectMapper objectMapper = new ObjectMapper();

    @Test
    public void test01() throws Exception {
        String xml = "<?xml version=\"1.0\" encoding=\"gb2312\" ?><root><dog>dogname</dog><cat>catname</cat></root>";

        StringWriter w = new StringWriter();
        JsonParser jp;

        try {
            jp = xmlMapper.getFactory().createParser(xml);
            JsonGenerator jg = objectMapper.getFactory().createGenerator(w);
            while (jp.nextToken() != null) {
                jg.copyCurrentEvent(jp);
            }
            jp.close();
            jg.close();
        } catch (Exception e) {
            e.printStackTrace();
        }  

       System.out.println(w.toString());

    }
}
<dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-core</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-annotations</artifactId>
            <version>${jackson.version}</version>
        </dependency>
        <dependency>
            <groupId>com.fasterxml.jackson.dataformat</groupId>
            <artifactId>jackson-dataformat-xml</artifactId>
            <version>${jackson.version}</version>
        </dependency>