Hướng dẫn sử dụng Java JDOM2 phân tích tài liệu XML
1. Giới thiệu
JDOM là một mô hình XML trong bộ nhớ (memory) có thể được sử dụng để đọc, viết, tạo và chỉnh sửa các tài liệu XML . JDOM cũng tương tự như DOM trong mà cả hai đều cung cấp một mô hình tài liệu XML trong bộ nhớ.
DOM được thiết kế để làm việc như nhau trong nhiều ngôn ngữ (C, C + +, ECMAScript , Java , JScript , Lingo , PHP, PLSQL , và Python) .
- JDOM được thiết kế chỉ dành cho Java và sử dụng các tính năng Java cụ thể tự nhiên mà mô hình DOM đã tránh . Vì lý do này JDOM cố ý không thực hiện theo các tiêu chuẩn DOM w3c . JDOM không phải là một bộ phân tích cú pháp XML (XML Parser) nhưng nó có thể sử dụng SAX, Stax hoặc bộ phân tích cú pháp DOM để xây dựng (build) các tài liệu JDOM . Phiên bản JDOM từ 2.0.0 ( JDOM2 ) sử dụng tất cả các tính năng ngôn ngữ mẹ đẻ Java 6 và sau đó như Generics , Enums , var-args , kiểu trả về đồng biến (co-variant data type), v.. v..
Xem thêm w3c DOM:
2. Thư viện
Không giống với DOM vốn có sẵn trong JDK, Với JDOM bạn phải download thư viện này về để sử dụng:
Bạn có thể download tại trang chủ của JDOM tại:
Hoặc đơn giản là download từ Maven Repository (Kho chứa maven):
3. Bắt đầu ví dụ
Đây là hình ảnh của Project sau khi hoàn thành:
department-datas.xml
<?xml version="1.0"?>
<department>
<employee>
<empNo>E01</empNo>
<empName>KING</empName>
<hireDate>17-11-1981</hireDate>
<salary>100000</salary>
</employee>
<employee>
<empNo>E02</empNo>
<empName>JONES</empName>
<hireDate>02-04-1981</hireDate>
<salary>200000</salary>
</employee>
</department>
ReadXMLFile.java
package org.o7planning.tutorial.jdom2;
import java.io.File;
import java.io.IOException;
import java.util.List;
import org.jdom2.Document;
import org.jdom2.Element;
import org.jdom2.JDOMException;
import org.jdom2.input.SAXBuilder;
public class ReadXMLFile {
public static void main(String[] args) {
SAXBuilder builder = new SAXBuilder();
File xmlFile = new File("department-datas.xml");
System.out.println("Parsing FILE: "+ xmlFile.getAbsolutePath());
try {
Document document = (Document) builder.build(xmlFile);
Element rootNode = document.getRootElement();
List<Element> list = rootNode.getChildren("employee");
for (int i = 0; i < list.size(); i++) {
Element node = (Element) list.get(i);
System.out.println(" ------ ");
System.out.println("Emp No : " + node.getChildText("empNo"));
System.out.println("Emp Name : " + node.getChildText("empName"));
System.out.println("Hire Date : " + node.getChildText("hireDate"));
System.out.println("Salary : " + node.getChildText("salary"));
}
} catch (IOException e) {
System.out.println(e.getMessage());
} catch (JDOMException e) {
System.out.println(e.getMessage());
}
}
}
Kết quả sau khi chạy lớp ReadXMLFile:
Java API cho HTML & XML
- Sử dụng Java SAX phân tích tài liệu XML
- Phân tích XML bằng cách sử dụng mô hình DOM trong Java
- Hướng dẫn và ví dụ Java JAXB
- Hướng dẫn sử dụng Java JDOM2 phân tích tài liệu XML
- Hướng dẫn sử dụng Java Jsoup phân tích HTML
- Hướng dẫn và ví dụ Java XStream
- Ví dụ Java đơn giản bắt đầu với DOM
Show More
Các thư viện mã nguồn mở Java
- Hướng dẫn và ví dụ Java JSON Processing API (JSONP)
- Hướng dẫn sử dụng Scribe OAuth Java API với Google OAuth 2
- Lấy thông tin phần cứng máy tính trong ứng dụng Java
- Restfb Java API cho Facebook
- Tạo Credentials cho Google Drive API
- Hướng dẫn sử dụng Java JDOM2 phân tích tài liệu XML
- Hướng dẫn và ví dụ Java XStream
- Hướng dẫn sử dụng Java Jsoup phân tích HTML
- Lấy thông tin địa lý dựa trên địa chỉ IP sử dụng GeoIP2 Java API
- Đọc Ghi file excel trong Java sử dụng Apache POI
- Khám phá Facebook Graph API
- Java Sejda WebP ImageIO chuyển đổi các định dạng ảnh sang WEBP
- Java JAVE Chuyển đổi audio và video sang định dạng mp3
- Thao tác với tập tin và thư mục trên Google Drive sử dụng Java
Show More