Thứ Năm, 15 tháng 12, 2016

SAX(Event-Based), DOM(Object-based)

Định nghĩa : 
JAXP viết tắt của : Java API for XML Processing được coi là một API trong lập trình Java sử dụng XML. Nó có khả năng phân tích và sử dụng các dữ liệu dưới dạng XML.

Phân tích cú pháp XML : 
XML parsers là những chương trình mà có nhiệm vụ phân tích và sử dụng  dữ liệu trong trang XML.
Các đặc điểm nổi trội của XML parsers : 
              - Ngôn ngữ độc lập 
              - Mã độc lập 
              - Tính linh hoạt cao 
              - Phù hợp hơn với nhiều mục đích sử dụng 


JAXP chia XML prasers làm 2 loại là : 
  + Event-Based Parsers : Giao diện phân tích API đơn giản dành cho XML ( ví dụ như SAX)
  + Object-Based : Giao diện phân tích dạng Mô hình đối tượng tài liệu (ví dụ như DOM) 
Tìm hiểu thêm về giao diện DOM : là giao diện rất dễ hiểu , DOM phân tích toàn bộ tài liệu XML và kiến thiết một cấu trúc hoàn chỉnh đại diện cho bản tài liệu, trong bộ nhớ, bằng cách dùng các lớp để mô hình hóa các khái niệm
Tìm hiểu thêm về giao diện SAX : Bộ phân tích SAX được gọi là SAXParser và được tạo bằng javax.xml.parsers.SAXParserFactory. Khác với bộ phân tích DOM, bộ SAXParser không tạo ra một hình thức đại diện của tài liệu XML trong bộ nhớ và vì thế nó hoạt động nhanh hơn, ít tốn bộ nhớ hơn. Thay vào đó, bộ phân tích SAXParser thông báo cho các trình khách cấu trúc của tài liệu XML bằng cách gọi các hàm callbacks, nghĩa là, bằng cách gọi các phương pháp của trường hợp Bản mẫu:Javadoc:SE đã được cung cấp cho bộ phân tích.
Nếu muốn thêm thông tin bạn có thể tham khảo ở đây

So sánh về 2 giao diện : 
 + DOM chỉ tích hợp để dùng với các tài liệu nhỏ còn SAX có thể dùng để đọc các tài liệu lớn
 + DOM phù hợp cho việc đọc toàn bộ 1 trang XML còn SAX thì chia nhỏ nó ra
 + DOM thực hiển nhiệm vụ của mình khá chậm so với SAX

Không có nhận xét nào:

Đăng nhận xét