Trong hướng dẫn này, chúng tôi sẽ mô tả cách chuyển đổi XML sang HTML bằng cách sử dụng các thư viện Java và công cụ mẫu phổ biến – JAXP, StAX, Freemarker và Mustache Show
2. Một XML thành UnmarshalHãy bắt đầu với một tài liệu XML đơn giản mà chúng ta sẽ sắp xếp lại thành một biểu diễn Java phù hợp trước khi chuyển đổi nó thành HTML. Chúng tôi sẽ ghi nhớ một vài mục tiêu chính
Hãy sử dụng một thông báo Jenkins đơn giản làm XML mẫu của chúng ta
Và nó khá đơn giản. Nó bao gồm một phần tử gốc và một số phần tử lồng nhau Chúng tôi sẽ cố gắng xóa tất cả các thẻ XML duy nhất và in ra các cặp khóa-giá trị khi chúng tôi tạo tệp HTML của mình 3. JAXPKiến trúc Java để xử lý XML (JAXP) là một thư viện nhằm mở rộng chức năng của Trình phân tích cú pháp SAX phổ biến với hỗ trợ DOM bổ sung. JAXP cung cấp khả năng sắp xếp và sắp xếp các đối tượng được xác định bằng XML vào và từ các POJO bằng cách sử dụng Trình phân tích cú pháp SAX. Chúng tôi cũng sẽ sử dụng trình trợ giúp DOM tích hợp Hãy thêm phần phụ thuộc Maven cho JAXP vào dự án của chúng ta
3. 1. Sắp xếp lại bằng cách sử dụng Trình tạo DOMTrước tiên, hãy bắt đầu sắp xếp lại tệp XML của chúng ta thành một đối tượng Phần tử Java
3. 2. Trích xuất nội dung tệp XML trong bản đồBây giờ, hãy tạo Bản đồ với nội dung có liên quan của tệp XML của chúng tôi
3. 3. Marshalling Sử dụng DOM BuilderMarshalling XML của chúng tôi thành một tệp HTML liên quan nhiều hơn một chút Hãy chuẩn bị một Tài liệu chuyển giao mà chúng ta sẽ sử dụng để viết ra HTML
Tiếp theo, chúng tôi sẽ điền Tài liệu với các Thành phần trong bản đồ của chúng tôi
Cuối cùng, hãy sắp xếp đối tượng Tài liệu của chúng ta bằng TransformerFactory
Nếu chúng ta gọi đầu ra. toString(), chúng ta sẽ nhận được biểu diễn HTML Lưu ý rằng một số tính năng và thuộc tính bổ sung mà chúng tôi đặt trên nhà máy của mình được lấy từ các đề xuất của dự án OWASP để tránh tiêm XXE 4. stAXMột thư viện khác mà chúng ta có thể sử dụng là Streaming API for XML (StAX). Giống như JAXP, StAX đã có từ rất lâu — từ năm 2004 Hai thư viện khác đơn giản hóa việc phân tích tệp XML. Điều đó thật tuyệt vời đối với các nhiệm vụ hoặc dự án đơn giản nhưng sẽ kém hơn khi chúng ta cần lặp lại hoặc có quyền kiểm soát rõ ràng và chi tiết đối với chính việc phân tích cú pháp phần tử. Đó là nơi StAX có ích Hãy thêm phần phụ thuộc Maven cho API StAX vào dự án của chúng ta
4. 1. Sắp xếp lại bằng StAXChúng tôi sẽ sử dụng luồng điều khiển lặp lại đơn giản để lưu trữ các giá trị XML vào Bản đồ của chúng tôi ________số 84. 2. Marshalling Sử dụng StAXBây giờ, hãy sử dụng bản đồ của chúng ta và viết ra HTML
Giống như trong ví dụ JAXP, chúng ta có thể gọi đầu ra. toString() để lấy biểu diễn HTML 5. Sử dụng Công cụ MẫuĐể thay thế cho việc viết biểu diễn HTML, chúng ta có thể sử dụng các công cụ mẫu. Có nhiều tùy chọn trong hệ sinh thái Java. Hãy khám phá một số trong số họ 5. 1. Sử dụng Apache FreemarkerApache FreeMarker là một công cụ mẫu dựa trên Java để tạo đầu ra văn bản (trang web HTML, e-mail, tệp cấu hình, mã nguồn, v.v. ) dựa trên mẫu và thay đổi dữ liệu Để sử dụng nó, chúng tôi sẽ cần thêm phụ thuộc freemarker vào dự án Maven của chúng tôi 0Trước tiên, hãy tạo một mẫu bằng cú pháp FreeMarker 1Bây giờ, hãy sử dụng lại bản đồ của chúng ta và điền vào các khoảng trống trong mẫu 25. 2. sử dụng ria mépMustache là một công cụ tạo khuôn mẫu ít logic. Bộ ria mép có thể được sử dụng cho HTML, tệp cấu hình, mã nguồn - gần như mọi thứ. Nó hoạt động bằng cách mở rộng các thẻ trong một mẫu sử dụng các giá trị được cung cấp trong hàm băm hoặc đối tượng Để sử dụng nó, chúng ta cần thêm phụ thuộc ria mép vào dự án Maven của mình 3Hãy bắt đầu tạo một mẫu bằng cú pháp Mustache 4Bây giờ, hãy điền vào mẫu bằng bản đồ của chúng tôi 56. HTML kết quảCuối cùng, với tất cả các mẫu mã của chúng tôi, chúng tôi sẽ nhận được cùng một đầu ra HTML 67. Sự kết luậnTrong hướng dẫn này, chúng ta đã học những kiến thức cơ bản về cách sử dụng JAXP, StAX, Freemarker và Mustache để chuyển đổi XML thành HTML Để biết thêm thông tin về XML trong Java, hãy xem các tài nguyên tuyệt vời khác ngay tại đây trên Baeldung Chúng tôi có thể chuyển đổi tệp XML sang HTML không?Người dùng cũng có thể chuyển đổi Tệp XML thành HTML bằng cách tải tệp lên . XML sang HTML Online hoạt động tốt trên Windows, MAC, Linux, Chrome, Firefox, Edge và Safari.
Là phần mở rộng XML của HTML?XML (Ngôn ngữ đánh dấu mở rộng) là ngôn ngữ đánh dấu tương tự như HTML, nhưng không có các thẻ được xác định trước để sử dụng . Thay vào đó, bạn xác định các thẻ của riêng mình được thiết kế dành riêng cho nhu cầu của bạn. Đây là một cách mạnh mẽ để lưu trữ dữ liệu ở định dạng có thể được lưu trữ, tìm kiếm và chia sẻ.
5 Cách XML sẽ được sử dụng trên HTML theo cách nào?Ưu điểm của XML so với HTML . XML mã hóa dữ liệu trong các cấu trúc cây được xác thực chặt chẽ. . HTML cố gắng kiểm soát sự xuất hiện và trình bày dữ liệu, trong khi XML thì không. . XML là một định dạng dữ liệu tiêu chuẩn cho phép các ứng dụng trao đổi thông tin trên các nền tảng và hệ điều hành. . XML mở và có thể mở rộng |