Cách dùng JDom truy xuất XML (Eclipse)

Nếu bạn đang cần truy xuất XML trong java thì JDom là 1 giải pháp đơn giản nhất.
Download JDom
Sau khi down về bạn giải nén ra và copy file jdom.jar trong thư mục "build" của gói vừa giải nén.

Để sử dụng jdom trong project của mình bạn cần Add reference các thư viện vào project, cách add thì như add look and feel, nếu chưa biết bạn có thể xem chi tiết tại đây.

READ XML:

Nôi dung file XML:

Launch Demo:
Download source

//Dòng này khai báo đường dẫn file XML cần load, SwordDemoJDom chính là tên main class của bạn.
InputStream in = SwordDemoJDom.class.getResourceAsStream("data/nhactre.xml");

//Phần này new 1 cái SAXBuilder có trong JDom
SAXBuilder builder = new SAXBuilder();
Document doc;
try {
doc = builder.build(in);

//Lấy về Root element trong file XML, root trong ví dụ này là "Songlist"
Element e = doc.getRootElement();

//Lập danh sách tất cả các child có trong file XML, child là "Song"
List kids = e.getChildren();

for (int i = 0; i < kids.size(); i++)
{

//Lấy về toàn bộ thành phần trong tag "Song" theo thứ tự, 0 là đầu tiên.
Element data = (Element) kids.get(i);

//Lấy nội dung trong tag "songname" và "singer"
final String songname = data.getChildText("songname");
final String singer = data.getChildText("singer");
int len = i*20;
textField = new JTextField();
textField.setBounds(10, len, 472, 20);

//Gán 2 String vừa lấy vào textField
textField.setText(songname + "--" + singer);
frame.getContentPane().add(textField);
}
} catch (JDOMException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}

Vế cách Write và xóa dữ liệu xuống XML thì vẫn tương tự như vậy, thay "getChildText" bằng "add" hay "remove", có thể xem tài liệu hướng dẫn của JDom tại đây.

No comments yet