Sơ lược về JAXP
Java API for XML
Processing
JAXP là gì?
JAXP (Java API for XML Processing) là một bộ API
chuẩn của Java để viết các ứng dụng xử lí dữ liệu
XML. Cụ thể JAXP cho phép các ứng dụng phân tích
(parse), chuyển đổi, kiểm tra tính hợp lệ (validate) và
truy vấn (query) các tài liệu XML. JAXP có 3 nhóm API
căn bản:
1. Simple API for XML (SAX)
2. Document Object Model (DOM)
3. Streaming API for XML (StAX)
Các package quan trọng
• javax.xml.parsers: package cung cấp những interface dùng chung
cho cả SAX và DOM
• org.xml.sax: package chứa toàn bộ các class, interface thuộc nhóm
SAX
• org.w3c.dom: package chứa toàn bộ các class, interface thuộc
nhóm DOM
• javax.xml.transform: package của XSLT API, các thư viện giúp việc
chuyển đổi dữ liệu XML sang các định dạng khác
• javax.xml.stream: package cung cấp các class, interface giúp việc
đọc và ghi các tài liệu XML
Về SAX
SAX viết tắt của cụm từ Simple API
for XML.
SAX cho phép viết ứng dụng phân
tíchtruy xuất (parse) tuần tự một
tài liệu XML.
SAX phân tích tài liệu XML theo
dòng dữ liệu đơn hướng (dữ liệu
đã đọc qua thì không đọc lại
được).
Về SAX
SAX thực hiện duyệt tài liệu XML
theo mô hình hướng-sự-kiện (event-
driven). Nó sử dụng ít bộ nhớ hơn
so với DOM do không nạp toàn bộ
tài liệu vào bộ nhớ.
SAX chỉ đọc tài liệu, không có khả
năng thay đổi, điều hướng việc đọc
cũng như truy xuất ngẫu nhiên nên
nó phù hợp sử dụng cho những ứng
dụng xử lí (parse, validate, query) tài
liệu XML lớn.
Về DOM
DOM viết tắt của cụm từ
Document Object Model.
Về căn bản DOM dễ hiểu và dễ
sử dụng hơn SAX.
DOM chuyển toàn bộ tài liệu
XML thành một cấu trúc cây
(tree) và nạp vào bộ nhớ để xử
lí.
Dựa vào cấu trúc cây, DOM dễ
dàng điều hướng việc truy xuất
trong tài liệu XML.
Về DOM
DOM cho phép truy xuất ngẫu
nhiên tới các phần tử trong tài
liệu và được Xpath hỗ trợ.
Do toàn bộ tài liệu phải được
nạp vào bộ nhớ nên việc sử
dụng DOM sẽ tốn kém tài
nguyên, nhất là khi xử lí các tài
liệu XML lớn.
DOM được sử dụng cho các
ứng dụng muốn thay đổi cấu
trúc, nội dung của một tài liệu
XML

Giới thiệu về JAXP

  • 1.
    Sơ lược vềJAXP Java API for XML Processing
  • 2.
    JAXP là gì? JAXP(Java API for XML Processing) là một bộ API chuẩn của Java để viết các ứng dụng xử lí dữ liệu XML. Cụ thể JAXP cho phép các ứng dụng phân tích (parse), chuyển đổi, kiểm tra tính hợp lệ (validate) và truy vấn (query) các tài liệu XML. JAXP có 3 nhóm API căn bản: 1. Simple API for XML (SAX) 2. Document Object Model (DOM) 3. Streaming API for XML (StAX)
  • 3.
    Các package quantrọng • javax.xml.parsers: package cung cấp những interface dùng chung cho cả SAX và DOM • org.xml.sax: package chứa toàn bộ các class, interface thuộc nhóm SAX • org.w3c.dom: package chứa toàn bộ các class, interface thuộc nhóm DOM • javax.xml.transform: package của XSLT API, các thư viện giúp việc chuyển đổi dữ liệu XML sang các định dạng khác • javax.xml.stream: package cung cấp các class, interface giúp việc đọc và ghi các tài liệu XML
  • 4.
    Về SAX SAX viếttắt của cụm từ Simple API for XML. SAX cho phép viết ứng dụng phân tíchtruy xuất (parse) tuần tự một tài liệu XML. SAX phân tích tài liệu XML theo dòng dữ liệu đơn hướng (dữ liệu đã đọc qua thì không đọc lại được).
  • 5.
    Về SAX SAX thựchiện duyệt tài liệu XML theo mô hình hướng-sự-kiện (event- driven). Nó sử dụng ít bộ nhớ hơn so với DOM do không nạp toàn bộ tài liệu vào bộ nhớ. SAX chỉ đọc tài liệu, không có khả năng thay đổi, điều hướng việc đọc cũng như truy xuất ngẫu nhiên nên nó phù hợp sử dụng cho những ứng dụng xử lí (parse, validate, query) tài liệu XML lớn.
  • 6.
    Về DOM DOM viếttắt của cụm từ Document Object Model. Về căn bản DOM dễ hiểu và dễ sử dụng hơn SAX. DOM chuyển toàn bộ tài liệu XML thành một cấu trúc cây (tree) và nạp vào bộ nhớ để xử lí. Dựa vào cấu trúc cây, DOM dễ dàng điều hướng việc truy xuất trong tài liệu XML.
  • 7.
    Về DOM DOM chophép truy xuất ngẫu nhiên tới các phần tử trong tài liệu và được Xpath hỗ trợ. Do toàn bộ tài liệu phải được nạp vào bộ nhớ nên việc sử dụng DOM sẽ tốn kém tài nguyên, nhất là khi xử lí các tài liệu XML lớn. DOM được sử dụng cho các ứng dụng muốn thay đổi cấu trúc, nội dung của một tài liệu XML