dom4j2json是一個Java庫,可以將dom4j對象轉換為JSON格式的字符串。
使用dom4j2json非常簡單。首先,需要在項目中添加dom4j和json依賴:
<dependency> <groupId>dom4j</groupId> <artifactId>dom4j</artifactId> <version>1.6.1</version> </dependency> <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.76</version> </dependency>
然后,可以使用dom4j2json將dom4j對象轉換為JSON字符串:
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONObject; import org.dom4j.Document; import org.dom4j.Element; import org.dom4j.io.SAXReader; import java.io.StringReader; public class Dom4j2JsonTest { public static void main(String[] args) throws Exception { String xmlString = "<root><name>John</name><age>30</age></root>"; SAXReader saxReader = new SAXReader(); Document document = saxReader.read(new StringReader(xmlString)); Element rootElement = document.getRootElement(); JSONObject jsonObject = (JSONObject) JSON.toJSON(rootElement); String jsonString = jsonObject.toJSONString(); System.out.println(jsonString); } }
上述代碼將XML字符串轉換為dom4j對象,并使用JSON.toJSON方法將其轉換為JSONObject。然后將JSONObject轉換為JSON字符串,并輸出。
可以看到,輸出的JSON字符串與原始XML字符串具有相同的內容:
{"name":"John","age":"30"}
這是因為dom4j2json會將XML元素的標簽名作為JSON對象的鍵,將元素的文本內容作為JSON對象的值。如果元素包含子元素,則將遞歸遍歷子元素,并將所有子元素的鍵值對添加到JSONObject中。
總之,dom4j2json是一個非常方便的庫,可以快速將dom4j對象轉換為JSON格式字符串,用于Web應用程序中的數據交換非常方便。