Làm cách nào để đọc và phân tích cú pháp tệp XML trong Java?



Bài viết này về trình phân tích cú pháp XML của java sẽ giúp bạn hiểu trình phân tích cú pháp XML là gì và cách phân tích cú pháp tệp XML bằng trình phân tích cú pháp dom trong Java.

Ngôn ngữ đánh dấu XML, eXtensible là một ngôn ngữ đánh dấu xác định một tập hợp các quy tắc để mã hóa tài liệu ở định dạng có thể đọc được. Phân tích cú pháp XML đề cập đến việc đi qua một tài liệu XML để truy cập hoặc sửa đổi dữ liệu. An Trình phân tích cú pháp XML cung cấp chức năng cần thiết để truy cập hoặc sửa đổi dữ liệu trong tài liệu XML. Trong bài viết này, hãy cùng khám phá Phân tích cú pháp XML chi tiết.

Trình phân tích cú pháp XML là gì?

Các Trình phân tích cú pháp XML là một thư viện phần mềm hoặc một gói cung cấp giao diện cho các ứng dụng khách để làm việc với các tài liệu XML. Nó kiểm tra định dạng phù hợp của tài liệu XML và cũng xác nhận các tài liệu XML.





Sơ đồ sau đây cho thấy cách trình phân tích cú pháp XML tương tác với các tài liệu XML:

trình phân tích cú pháp xml - Edureka Bạn có thể coi xác thực là một giai đoạn khác ngoài phân tích cú pháp. Vì các phần thành phần của chương trình được xác định khi phân tích cú pháp, trình phân tích cú pháp xác thực có thể so sánh chúng với mẫu do DTD hoặc Schema đặt ra để kiểm tra xem chúng có phù hợp hay không.



Trình phân tích cú pháp XML JAVA

Thành phần cơ bản của phát triển XML là phân tích cú pháp XML. Phân tích cú pháp XML cho Java là một thành phần XML độc lập phân tích cú pháp một tài liệu XML (và đôi khi cũng là một DTD hoặc Lược đồ XML độc lập) để chương trình người dùng có thể xử lý nó. Hình dưới đây cho thấy một tài liệu XML làm đầu vào cho Trình phân tích cú pháp XML cho

  • Một tài liệu XML được gửi đilàm đầu vào cho Trình phân tích cú pháp XML cho Java
  • Giao diện trình phân tích cú pháp DOM hoặc SAX phân tích cú pháp tài liệu XML
  • Sau đó, XML được phân tích cú pháp sẽ được chuyển đến ứng dụng để xử lý thêm

Trình phân tích cú pháp XML cho Java cũng có thể bao gồm Bộ xử lý chuyển đổi XSL (XSLT) tích hợp để chuyển đổi dữ liệu XML bằng cách sử dụng biểu định kiểu XSL. Sử dụng Bộ xử lý XSLT, bạn có thể dễ dàng chuyển đổi các tài liệu XML từ XML sang XML, XML sang HTML hoặc hầu như sang bất kỳ định dạng dựa trên văn bản nào khác.



java cách sử dụng trình lặp

Java cung cấp rất nhiều tùy chọn để phân tích cú pháp các tài liệu XML.Some của các trình phân tích cú pháp XML java thường được sử dụng là:

cách triển khai phương thức trừu tượng trong java
  1. DOM Parser
  2. SAX Parser
  3. StAX Parser
  4. JAXB

Trong bài viết này, hãy cùng tìm hiểu cách phân tích cú pháp Tệp XML bằng Trình phân tích cú pháp DOM.

Trình phân tích cú pháp Java XML - DOM

KIỂM ĐỊNH viết tắt của Mô hình Đối tượng Tài liệu. DOM Parser là trình phân tích cú pháp XML java dễ thực hiện và học hỏi. Nó phân tích cú pháp toàn bộ tài liệu XML, tải nó vào bộ nhớ và xây dựng đại diện của tài liệu.Hãy xem xét một ví dụ đơn giản để hiểu khái niệm này.

Đối với mục đích demo, chúng tôi sẽ sử dụng một tệp có tên Nhân viên.xml . Trong tệp, mỗi nhân viên có một ID duy nhất, họ và tên, tuổi và mức lương và các nhân viên được phân tách bằng ID của họ.

Dean Winchester 30 2500 Sam Davis 22 1500 Jake Peralta 24 2000 Amy Griffin 25 2250

Ngoài ra, để nắm bắt được khái niệm về một nhân viên, chúng tôi tạo lớp Java tương ứng của nó, được gọi là Employee.java như hình bên dưới:

gói MyPackage public class Nhân viên {private String ID private String Firstname private String Lastname private int age private double lương công khai Nhân viên (String ID, String Firstname, String Lastname, int age, double Lương) {this.ID = ID this.Firstname = Firstname this.Lastname = Lastname this.age = age this.salary = Lương} @Override public String toString () {return ''}}

Phân tích cú pháp tệp XML bằng Trình phân tích cú pháp DOM

Mô hình đối tượng tài liệu (DOM) cung cấp các API cho phép bạn tạo, sửa đổi, xóa và sắp xếp lại các nút nếu cần. Trình phân tích cú pháp DOM phân tích cú pháp toàn bộ tài liệu XML và tải nội dung XML vào cấu trúc Cây. Sử dụng NútNodeList , chúng ta có thể truy xuất và sửa đổi nội dung của tệp XML.

Một ví dụ tải nội dung của tệp XML và in nội dung của nó được hiển thị bên dưới:

gói MyPackage import java.io.File import java.io.IOException import java.util.ArrayList import java.util.List import javax.xml.parsers.DocumentBuilder import javax.xml.parsers.DocumentBuilderFactory import javax.xml.parsers.ParserC import org.w3c.dom.Document import org.w3c.dom.Element import org.w3c.dom.Node import org.w3c.dom.NodeList import org.xml.sax.SAXException public class DomParserExample {public static void main (String [] args) ném ParserConfigurationException, SAXException, IOException {// Tải tài liệu trình tạo tài liệu DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance () DocumentBuilder builder = factory.newDocumentBuilder () // Tải tài liệu XML đầu vào, phân tích cú pháp và trả về một phiên bản của // Lớp tài liệu. Tài liệu tài liệu = builder.parse (Tệp mới ('Nhân viên.xml')) Danh sách nhân viên = new ArrayList () NodeList nodeList = document.getDocumentElement (). GetChildNodes () for (int i = 0 i

Việc thực thi mã xảy ra như sau:

php chuyển đổi chuỗi thành mảng
  • Đầu tiên, bạn cần nhập các gói phân tích cú pháp dom trong ứng dụng
  • Bước tiếp theo là tạo DocumentBuilder vật
  • Đọc tệp XML cho đối tượng Tài liệu.
  • Phân tích cú pháp và lưu trữ tệp XML trong một phiên bản của lớp Tài liệu
  • Khi bạn tìm thấy một loại nút Node.ELEMENT_NODE , truy xuất tất cả thông tin của nó và lưu trữ chúng trong một phiên bản của lớp Nhân viên
  • Cuối cùng, in thông tin của tất cả nhân viên được lưu trữ

Đầu ra

 

Đó là cách bạn có thể phân tích cú pháp tệp XML bằng Trình phân tích cú pháp DOM. Trình phân tích cú pháp DOM có những ưu điểm và nhược điểm của nó.

Ưu điểm và nhược điểm của DOM Parser

Ưu điểm

  • API rất đơn giản để sử dụng
  • Nó hỗ trợ cả thao tác đọc và ghi
  • Được ưu tiên khi yêu cầu quyền truy cập ngẫu nhiên vào các phần được phân tách rộng rãi của tài liệu

Nhược điểm

  • Đó là bộ nhớ không hiệu quả. Nhưkích thước tệp tăng lên, hiệu suất của nó kém đi và tiêu tốn nhiều bộ nhớ hơn
  • Tương đối chậm hơn so với các trình phân tích cú pháp XML khác có sẵn trong Java

Phần này đưa chúng ta đến phần cuối của bài viết ‘Trình phân tích cú pháp Java XML’ này.

Đảm bảo rằng bạn luyện tập nhiều nhất có thể và hoàn nguyên trải nghiệm của mình.

Kiểm tra của Edureka, một công ty học trực tuyến đáng tin cậy với mạng lưới hơn 250.000 người học hài lòng trải dài trên toàn cầu. Chúng tôi ở đây để giúp bạn từng bước trong hành trình của bạn, để trở thành một người ngoài câu hỏi phỏng vấn java này, chúng tôi còn đưa ra một chương trình giảng dạy được thiết kế cho sinh viên và chuyên gia muốn trở thành một Nhà phát triển Java.

Có một câu hỏi cho chúng tôi? Vui lòng đề cập đến nó trong phần nhận xét của 'Trình phân tích cú pháp Java XML' này và chúng tôi sẽ liên hệ lại với bạn trong thời gian sớm nhất.