ה- Java XML parser משמש לעבוד עם נתוני XML. XML היא טכנולוגיה נפוצה המשמשת להעברת או לאחסון נתונים. לכן קיימים רבים Java XML parsers זמינים.
Java XML Parser
כמה מה- Java XML parsers שמשמשים הם:
- DOM Parser
- SAX Parser
- StAX Parser
- JAXB
קיימות גם API נוספות לניתוח XML ב-Java, לדוגמה JDOM
ו־JiBX
. מדריך זה נועד לחקור סוגים שונים של API של עיבוד XML וללמוד מטלות נפוצות שאנו צריכים לבצע עם XML כגון קריאה, כתיבה ועריכה.
Java XML Parser – DOM
DOM Parser הוא ה-Java XML parser הקל ביותר ללמידה. DOM parser טוען את קובץ ה-XML לזיכרון וניתן לנו לעבור אותו צומת אחר צומת כדי לנתח את ה-XML. DOM Parser טוב לקבצים קטנים אך כאשר גודל הקובץ מגדיל זה מבצע פעולות איטיות ומצריך יותר זיכרון.
- קריאת קובץ XML מאמר זה מציג איך להשתמש ב־DOM Parser לניתוח קובץ XML לאובייקט.
- כתיבת קובץ XML מאמר זה מסביר איך להשתמש ב־DOM Parser לכתיבת נתוני אובייקט לקובץ XML.
- עריכת קובץ XML ניתן להשתמש ב־DOM Parser גם לעריכת נתוני XML. מאמר זה מציג איך להוסיף אלמנטים, להסיר אלמנטים, לערוך ערכי אלמנטים, לערוך מאפיינים במסמך XML באמצעות DOM Parser.
Java XML Parser – SAX
פענוח XML בעזרת SAX Parser ב־Java מספק API לניתוח מסמכי XML. SAX Parsers שונים מפרוטוקול פענוח DOM משום שהם אינם טוענים את הXML כולו לזכרון וקוראים במסמך XML בסדר. זהו פענוח מבוסס אירועים ואנו צריכים לממש מחלקת מטפל שלנו עם שיטות קריאת חזרה כדי לנתח קובץ XML. זה יעיל יותר מ־DOM Parser לקבצי XML גדולים ביחס לזמן ולשימוש בזכרון.
- קרא קובץ XML למד איך ליצור את מחלקת מטפל החזרות שלנו כדי לקרוא קובץ XML לרשימת אובייקטים באמצעות SAX Parser.
StAX Java XML Parser
Java Streaming API for XML (Java StAX) מספק יישום לעיבוד XML ב-Java. StAX מתקבל משני סטים של API – API בהתאם לקורסור ו-API בהתאם לאיטרטור. כיסיתי את זה יסודית בפוסטים שונים.
- קרא קובץ XML באמצעות StAX Iterator API במדריך זה נלמד איך לקרוא XML באופן יטב באמצעות Java StAX (
XMLEventReader
). - כתוב קובץ XML באמצעות StAX Iterator API במדריך זה נראה כיצד אנו יכולים לכתוב קובץ XML ב-Java באמצעות API בהתאם לאיטרטור (
XMLEventWriter
). - קריאת קובץ XML באמצעות API של StAX Cursor
מאמר זה מציג איך להשתמש ב- StAX Cursor API (XMLStreamReader
) כדי לקרוא נתוני XML לאובייקט. -
כתיבת קובץ XML באמצעות API של StAX Cursor
API של StAX Cursor ב-Java הוא ישיר ביותר ביצירת XML והפקתו. אנו צריכים ליצור אובייקטXMLStreamWriter
ולכתוב נתונים אליו. המדריך הזה מסביר זאת בפרט עם דוגמה.
מפענח XML של Java – JDOM
JDOM מספק API מעולה למפענח XML של Java לקרוא, לערוך ולכתוב מסמכי XML בקלות. JDOM מספק קלפי קישורים כדי לבחור את המימוש התחתי שלך מבין מפענח SAX, מפענח DOM, מפענח STAX Event ומפענח STAX Stream. היתרון בשימוש ב-JDOM הוא שתוכל להחליף בקלות מ-SAX ל-DOM ל-STAX Parser, תוכל לספק שיטות יצור לתת ליישום הלקוח לבחור במימוש.
-
קריאת קובץ XML באמצעות JDOM XML Parser
במדריך זה, נלמד כיצד לקרוא קובץ XML לאובייקט באמצעות מפענח XML של JDOM. - כתיבת קובץ XML עם JDOM במדריך זה נלמד איך לכתוב קובץ XML ב-Java באמצעות JDOM. מסמך JDOM מספק שיטות ליצירת רכיבים ומאפיינים בקלות. המחלקה XMLOutputter יכולה לשמש לכתיבת המסמך לכל עצם OutputStream או Writer.
- עריכת קובץ XML עם JDOM JDOM מספק דרך מסודרת מאוד לניהול קבצי XML, שימוש ב-JDOM הוא פשוט מאוד והקוד נראה נקי ונקרא. במדריך זה נלמד איך להוסיף רכיב, להסיר רכיב, לערוך את ערך הרכיב ואת ערך המאפיין.
פענוח XML ב-Java – JAXB
Java Architecture for XML Binding (JAXB) מספק API להמרת אובייקט ל-XML ומ-XML לאובייקט בקלות. JAXB נפתח כפרויקט נפרד אך הוא נעשה שימוש בו במידה רבה וסופסוף הפך להיות חלק מ-JDK ב-Java 6.
- הדרכה על JAXBשימוש ב-JAXB הוא דבר פשוט מאוד והוא משתמש באנוטציות. אנו צריכים לסיימת את אובייקט ה-Java כדי לספק הוראות ליצירת XML ולאחר מכן עלינו ליצור את
Marshaller
כדי להמיר אובייקט ל-XML.Unmarshaller
משמש להמרת XML לאובייקט ב-Java. במדריך זה, נלמד על אנוטציות JAXB הנפוצות ביותר וכיצד להמיר אובייקט Java ל-XML (Marshalling) ו-XML לאובייקט Java (Unmarshalling).
מפענח XML של Java – JiBX
JiBX הוא מסגרת עוצמתית מאוד להמרת נתוני XML לאובייקט Java ולהפך. זה מאוד שימושי באינטגרציה של יישומים כאשר XML הוא הפורמט להעברת נתונים, לדוגמה, אינטגרציה של שירותים ומערכות ישנות המבוססות על מודל הודעות ממוקדות (MOM).
- הדרכה על JiBX ישנם הרבה מסגרות זמינות להמרת XML כמו JAXB ו-XMLBeans, אך JiBX שונה בגישה שלו לקשר ולתהליך ההמרה של XML. JiBX מבצע את המשימות האלו דרך מחלקות יולדות בזמן ההדפסה דרך סקריפטים של ant. גישה זו מפחיתה את זמן העיבוד על ידי העברת עבודות מתוך התהליך הדו-שלבי המסורתי עם מפענחים אחרים לתהליך יחיד.
נתיב XPath
נתיב XPath מספק תחביר להגדיר חלק ממסמך XML. ביטוי XPath הוא שפת שאילתות לבחירת חלק ממסמך XML על סמך מחרוזת השאילתא. באמצעות ביטויי XPath, ניתן למצוא צמתים בכל מסמך XML המקיימים את מחרוזת השאילתא.
- מדריך XPath החבילה javax.xml.xpath מספקת תמיכה ב־XPath ב־Java. כדי ליצור את XPathExpression, ממשק ה־XPath מספק אופציות יצירה. במדריך זה נשתמש בשפת שאילתת XPath כדי למצוא אלמנטים המקיימים קריטריונים נתונים.
משימות שונות של מפענח XML של Java
- צור XML דוגמה מ־XSD ב־Eclipse אם אתה עובד עם שירותי רשת, ייתכן שהשתמשת ב־XSD וכדי לבדוק את השירות, עליך ליצור XML מקובץ XSD. Eclipse מספק דרך קלה מאוד ליצירת XML מ־XSD.
- אימות XML נגד XSD ניתן להשתמש ב- Java XML Validation API כדי לאמת XML נגד XSD. המחלקה
javax.xml.validation.Validator
משמשת במדריך זה לאימות קובץ XML נגד קובץ XSD. - קובץ מאפייני XML של Java כללית, אנו אוחסנים פרמטרי הגדרת תצורה עבור יישומי Java בקובץ מאפיינים. בקובץ מאפייני Java יכול להיות קובץ מאפיינים רגיל עם זוגות מפתח-ערך או יכול להיות קובץ XML גם. בדוגמה זו, נלמד כיצד לכתוב קובץ מאפייני XML ואז לקרוא מאפיינים מקבצי מאפייני XML.
- XML של SOAP SOAP הוא פרוטוקול העברת Xml. SOAP מתייחס לפרוטוקול גישה פשוט לאובייקטים. SOAP הוא מנגנון קל להחלפת מידע מובנה ומסוגר. מאחר שהוא מבוסס על XML, הוא תלוי בשפה ובפלטפורמה. במדריך זה תלמד על SOAP XML וכיצד ניתן ליצור אותו באמצעות תוכנה Liquid XML Studio.
- עיצוב מסמך XML קבוצת ייחוד עם שיטות להדפסת XML בצורה יפה ולהמיר בין מסמך XML למחרוזת וממחרוזת למסמך XML.
- המרת מסמך למחרוזת וממחרוזת למסמך לפעמים, בעת תכנות ב-Java, קורה שאנו מקבלים מחרוזת המכילה XML וכדי לעבד אותה, אנו צריכים להמיר אותה למסמך XML (org.w3c.dom.Document). גם לצורך תיקונים או לשליחה לפונקציה אחרת, ייתכן שנצטרך להמיר אובייקט מסמך למחרוזת. שני שיטות יעולות להמרת מחרוזת למסמך XML ומסמך XML למחרוזת.
I will be adding more java XML parser tutorials here as and when I post more, so don’t forget to bookmark it for future use.
Source:
https://www.digitalocean.com/community/tutorials/java-xml-parser