{"id":2051,"date":"2022-12-04T14:35:48","date_gmt":"2022-12-04T06:35:48","guid":{"rendered":"https:\/\/qaqaq.top\/?p=2051"},"modified":"2022-12-19T20:32:17","modified_gmt":"2022-12-19T12:32:17","slug":"xml-%e4%bd%bf%e7%94%a8dom4j%e8%af%bb%e5%8f%96xml%e6%96%87%e4%bb%b6%e5%be%97%e5%88%b0document%e5%af%b9%e8%b1%a1%e3%80%81xml-%e4%bd%bf%e7%94%a8dom4j%e8%a7%a3%e6%9e%90xml","status":"publish","type":"post","link":"https:\/\/qaqaq.top\/?p=2051","title":{"rendered":"xml-\u4f7f\u7528dom4j\u8bfb\u53d6xml\u6587\u4ef6\u5f97\u5230Document\u5bf9\u8c61\u3001\u4f7f\u7528dom4j\u89e3\u6790xml"},"content":{"rendered":"\n<pre class=\"wp-block-code\"><code>package top.qaqaq.java;\n\nimport org.dom4j.Document;\nimport org.dom4j.Element;\nimport org.dom4j.io.SAXReader;\nimport org.junit.jupiter.api.Test;\n\nimport java.util.List;\n\n\/**\n * @author RichieZhang\n * @create 2022-12-04 \u4e0b\u5348 1:45\n *\/\npublic class Dom4jTest {\n\n    @Test\n    public void test1() throws Exception {\n        \/\/ \u521b\u5efa\u4e00\u4e2aSaxReader\u8f93\u5165\u6d41\uff0c\u53bb\u8bfb\u53d6xml\u914d\u7f6e\u6587\u4ef6\uff0c\u751f\u6210Document\u5bf9\u8c61\n        SAXReader reader = new SAXReader();\n\n        Document document = reader.read(\"src\/books.xml\");\n\n        System.out.println(document);\n    }\n\n    \/**\n     * \u8bfb\u53d6books.xm\u6587\u4ef6\u751f\u6210Book\u7c7b\n     *\/\n    @Test\n    public void test2() throws Exception {\n        \/\/1. \u8bfb\u53d6books.xml\u6587\u4ef6\n        SAXReader reader = new SAXReader();\n        \/\/ \u5728Junit\u6d4b\u8bd5\u4e2d\uff0c\u76f8\u5bf9\u8def\u5f84\u662f\u4ece\u6a21\u5757\u540d\u5f00\u59cb\u7b97\n        Document document = reader.read(\"src\/books.xml\");\n\n        \/\/2. \u901a\u8fc7Document\u5bf9\u8c61\u83b7\u53d6\u6839\u5143\u7d20\n        Element rootElement = document.getRootElement();\n        System.out.println(rootElement);\n\n        \/\/3. \u901a\u8fc7\u6839\u5143\u7d20\u83b7\u53d6book\u6807\u7b7e\u5bf9\u8c61\n        \/\/ element()\u548celements() \u90fd\u662f\u901a\u8fc7\u6807\u7b7e\u540d\u67e5\u627e\u5b50\u5143\u7d20\n        List&lt;Element&gt; books = rootElement.elements(\"book\");\n\n        \/\/4. \u904d\u5386\uff0c\u5904\u7406\u6bcf\u4e2abook\u6807\u7b7e\u8f6c\u6362\u4e3abook\u7c7b\n        for (Element book: books) {\n            \/\/asXml() \u628a\u6807\u7b7e\u5bf9\u8c61\u3002\u8f6c\u6362\u4e3a\u6807\u7b7e\u5b57\u7b26\u4e32\n            Element nameElement = book.element(\"name\");\n            System.out.println(nameElement.asXML());\n\n            \/\/ getText() \u53ef\u4ee5\u83b7\u53d6\u6807\u7b7e\u4e2d\u7684\u6587\u672c\u5185\u5bb9\n            String nameText = nameElement.getText();\n            System.out.println(nameText);\n\n            \/\/ \u76f4\u63a5 \u83b7\u53d6\u6307\u5b9a\u6807\u7b7e\u540d\u7684\u6587\u672c\u5185\u5bb9\n            String priceText = book.elementText(\"price\");\n            System.out.println(priceText);\n\n            String authorText = book.elementText(\"author\");\n            System.out.println(authorText);\n\n            String snValue = book.attributeValue(\"sn\");\n\n            System.out.println(new Book(snValue,nameText,Double.parseDouble(priceText),authorText));\n\n        }\n\n    }\n}\n<\/code><\/pre>\n\n\n\n<pre class=\"wp-block-code\"><code>package top.qaqaq.java;\n\n\/**\n * @author RichieZhang\n * @create 2022-12-04 \u4e0b\u5348 1:36\n *\/\npublic class Book {\n\n    private String sn;\n    private String name;\n    private Double price;\n    private String author;\n\n    public Book() {\n    }\n\n    public Book(String sn, String name, Double price, String author) {\n        this.sn = sn;\n        this.name = name;\n        this.price = price;\n        this.author = author;\n    }\n\n    public String getSn() {\n        return sn;\n    }\n\n    public void setSn(String sn) {\n        this.sn = sn;\n    }\n\n    public String getName() {\n        return name;\n    }\n\n    public void setName(String name) {\n        this.name = name;\n    }\n\n    public Double getPrice() {\n        return price;\n    }\n\n    public void setPrice(Double price) {\n        this.price = price;\n    }\n\n    public String getAuthor() {\n        return author;\n    }\n\n    public void setAuthor(String author) {\n        this.author = author;\n    }\n\n    @Override\n    public String toString() {\n        return \"Book{\" +\n                \"sn='\" + sn + '\\'' +\n                \", name='\" + name + '\\'' +\n                \", price=\" + price +\n                \", author='\" + author + '\\'' +\n                '}';\n    }\n}\n<\/code><\/pre>\n\n\n\n<p>books.xml<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n&lt;books&gt;\n    &lt;book sn=\"SN12341232\"&gt;\n        &lt;name&gt;\u8f9f\u90aa\u5251\u8c31&lt;\/name&gt;\n        &lt;price&gt;9.9&lt;\/price&gt;\n        &lt;author&gt;\u73ed\u4e3b\u4efb&lt;\/author&gt;\n    &lt;\/book&gt;\n    &lt;book sn=\"SN12341231\"&gt;\n        &lt;name&gt;\u8475\u82b1\u5b9d\u5178&lt;\/name&gt;\n        &lt;price&gt;99.99&lt;\/price&gt;\n        &lt;author&gt;\u73ed\u957f&lt;\/author&gt;\n    &lt;\/book&gt;\n&lt;\/books&gt;<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>books.xml<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[59],"tags":[61],"class_list":["post-2051","post","type-post","status-publish","format-standard","hentry","category-javaweb-code","tag-javaweb"],"_links":{"self":[{"href":"https:\/\/qaqaq.top\/index.php?rest_route=\/wp\/v2\/posts\/2051"}],"collection":[{"href":"https:\/\/qaqaq.top\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/qaqaq.top\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/qaqaq.top\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/qaqaq.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=2051"}],"version-history":[{"count":3,"href":"https:\/\/qaqaq.top\/index.php?rest_route=\/wp\/v2\/posts\/2051\/revisions"}],"predecessor-version":[{"id":2694,"href":"https:\/\/qaqaq.top\/index.php?rest_route=\/wp\/v2\/posts\/2051\/revisions\/2694"}],"wp:attachment":[{"href":"https:\/\/qaqaq.top\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=2051"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/qaqaq.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=2051"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/qaqaq.top\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=2051"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}