CodeGym /หลักสูตร /คอลเลกชัน Java /XML การทำให้เป็นอันดับเป็น XML

XML การทำให้เป็นอันดับเป็น XML

คอลเลกชัน Java
ระดับ , บทเรียน
มีอยู่

"เป็นอย่างไรบ้าง?"

"เยี่ยม บ่นไม่ได้ วันนี้ Bilaabo บอกฉันเกี่ยวกับ JavaScript ไม่ใช่ทุกอย่าง แต่มากกว่าเพียงเล็กน้อย แน่นอนฉันยังไม่ได้เขียนอะไรใน JS แต่ฉันไม่คิดว่ามันจะเป็น ยาก."

"และ Ellie บอกฉันเกี่ยวกับการทำให้เป็นอนุกรม JSON และคุณอธิบายเฟรมเวิร์กของ Jackson และวิธีตั้งค่า 'การดีซีเรียลไลเซชันแบบ polymorphic' โดยใช้คำอธิบายประกอบ"

"ไม่มีทาง! คุณฉลาดแล้ว Amigo! สตั๊ดตัวจริง!"

"แล้วบางส่วน!"

"ตกลง ไปทำงานกันเถอะ วันนี้เรามีหัวข้อใหม่ที่น่าสนใจ: XML "

XML การทำให้เป็นอันดับเป็น XML - 1

"XML เป็นมาตรฐานสำหรับการแสดงข้อมูลที่มนุษย์สามารถอ่านได้ง่าย และง่ายยิ่งขึ้นโดยโปรแกรม นี่คือตัวอย่างไฟล์ XML:"

XML
<data>
<owner first="Adam" last="Shelton">
<address>London</address>
</owner>
<cat name="Missy" age="15"/>
</data>

"รากฐานของ XML คือแท็ก แท็กคือคำในวงเล็บมุม (เครื่องหมายมากกว่าและน้อยกว่า) มีแท็กเปิดและปิด แท็กเปิดแต่ละแท็กมีแท็กปิดที่สอดคล้องกันหนึ่งแท็ก แท็กเปิดสามารถมีแอตทริบิวต์ได้ "

"แท็กสามารถซ้อนกันภายในแท็กได้ ดังนั้นการสร้างโครงสร้างองค์ประกอบ แท็กระดับบนสุดเรียกว่ารูท: มีแท็กย่อยซึ่งจะมีแท็กย่อยของตัวเอง"

"นี่คือตัวอย่างบางส่วน:"

แท็ก คำอธิบาย
< ข้อมูล > เปิดแท็กข้อมูล
</ ข้อมูล > ปิดแท็กข้อมูล
ชื่อ แมว = " Missy " อายุ = " 15 "> แท็กที่มีคุณสมบัติ ค่าแอตทริบิวต์อยู่ในเครื่องหมายคำพูด
<ข้อมูล
> <เจ้าของ>
<ชื่อแมว = "มิสซี่"/> </เจ้าของ>
</data>
แท็กที่ซ้อนกัน
< ชื่อแมว = "มิสซี่" อายุ = "15"  /> แท็กปิดตัวเอง
แท็กดังกล่าวไม่ต้องการแท็กปิด
และไม่สามารถมีแท็กย่อยได้
<info>
ข้อมูลทุกประเภทสามารถไปที่นี่ได้
</info>
แท็กสามารถมีข้อมูลที่เป็นข้อความ
<info> <data xxx = "yyy"> </data> ข้อมูล
ชนิดใดก็ได้<data 2xxx = "yyy"/> สามารถไปที่นี่ได้</info>





แท็กอาจมีข้อมูลข้อความกระจายอยู่กับแท็กอื่นๆ

"มันดูง่าย มีแท็กอะไรบ้าง"

"ประเภทใดก็ได้ ไม่มีแท็กที่สงวนไว้ XML เป็นภาษาสำหรับอธิบายข้อมูลใด ๆ ผู้คนคิดแท็กที่ตรงกับความต้องการของพวกเขาและตกลงว่าจะใช้งานอย่างไร"

"โดยพื้นฐานแล้ว XML เป็นวิธีการเขียนข้อมูลเป็นแผนผังองค์ประกอบที่คอมพิวเตอร์สามารถเข้าใจได้"

"ฉันคิดว่าฉันเข้าใจแล้ว อย่างไรก็ตาม ฉันมีคำถาม"

"JSON ใช้เพื่อส่งข้อมูลจากเบราว์เซอร์ไปยังเซิร์ฟเวอร์ แต่จะใช้ XML ที่ไหน"

"ในสถานที่เดียวกับที่ใช้ JSON: สำหรับจัดเก็บและส่งข้อมูล"

"โอเค ไปกันต่อ"

"ลองนึกภาพว่าคุณมีไฟล์ XML ที่ใช้ร่วมกันไฟล์หนึ่งที่เก็บข้อมูลสำหรับโปรแกรมที่เขียนโดยคน 20 คน แต่ละคนมีแท็กของตัวเอง และพวกเขาก็เริ่มรบกวนซึ่งกันและกันอย่างรวดเร็ว"

"เพื่อให้แน่ใจว่าแท็กไม่ซ้ำกัน คำนำหน้าจึงถูกประดิษฐ์ขึ้น นี่คือรูปลักษณ์:"

แท็ก คำอธิบาย
< สัตว์ : แมว> ป้ายชื่อแมวที่มีคำนำหน้าสัตว์
< สัตว์ :แมว>
</ สัตว์:แมว>
< สวนสัตว์ :แมว>
</ สวนสัตว์ :แมว>
แท็ก แมวสองตัวที่มีคำนำหน้าต่างกัน
< สัตว์ : สวนสัตว์แมว  : ชื่อ = "MX"> ป้าย ชื่อ แมวที่มีคำนำหน้าสัตว์ แอตทริบิวต์ชื่อที่มีคำนำหน้าสวนสัตว์

"คำนำหน้าเรียกอีกอย่างว่าเนมสเปซ ถ้าเราเรียกมันว่าเนมสเปซ คำอธิบายสุดท้ายในตารางจะกลายเป็น 'แท็กแมวที่มีเนมสเปซสัตว์ แอตทริบิวต์ชื่อที่มีเนมสเปซสวนสัตว์'"

"ยังไงก็ตาม คุณจำได้ไหมว่าใน Java แต่ละคลาสจะมีชื่อสั้นและชื่อยาวที่ไม่ซ้ำกันซึ่งรวมถึงชื่อแพ็คเกจด้วย ซึ่งระบุไว้เมื่อนำเข้าแพ็คเกจด้วย"

"ใช่."

" คำนำหน้ายังมีชื่อยาวที่ไม่ซ้ำกันและมีการระบุเมื่อนำเข้าด้วย: "

ตัวอย่าง
< data  xmlns:soap="http://cxf.apache.org/bindings/soap" >
 < สบู่ :item> 
< สบู่ :info/> 
</ สบู่ :item> 
</ data >

"' xml ns :soap' หมายถึง ' XMLn ame s pace SOAP'"

"คุณยังสามารถตั้งชื่อเฉพาะของแท็กที่ไม่มีคำนำหน้า: "

ตัวอย่าง
<ข้อมูล xmlns = "http://www.springframework.org/schema/beans" 
xmlns: soap = "http://cxf.apache.org/bindings/soap" 
xmlns:task = "http://www.springframework .org/schema/task" > 
< สบู่ :item> 
< สบู่ :info/> 
< งาน :info/> 
</ สบู่ :item> 
</data>

"'xmlns=…' ตั้งค่าเนมสเปซสำหรับคำนำหน้าที่ว่างเปล่า กล่าวอีกนัยหนึ่ง ตั้งค่าเนมสเปซสำหรับแท็กที่ไม่มีคำนำหน้า เช่น ข้อมูลในตัวอย่างด้านบน"

"คุณสามารถมีเนมสเปซในเอกสารได้มากเท่าที่คุณต้องการ แต่แต่ละเนมสเปซต้องมีชื่อเฉพาะ"

"เข้าใจแล้ว ทำไมเนมสเปซเหล่านี้ถึงมีชื่อแปลก ๆ แปลกๆ"

"โดยปกติจะระบุ URL ที่ชี้ไปยังเอกสารที่อธิบายเนมสเปซและ/หรือแท็ก XML"

“วันนี้คุณให้ข้อมูลกับฉันมากมาย แล้วมีอะไรอีก”

"ยังมีอีกนิดหน่อย"

"อย่างแรก XML มีส่วนหัว เป็นบรรทัดพิเศษที่อธิบายเวอร์ชัน XML และการเข้ารหัสไฟล์ "โดยปกติจะมีลักษณะดังนี้:"

"มักจะมีลักษณะดังนี้:"

ตัวอย่าง
<?xml  เวอร์ชัน = "1.0"  การเข้ารหัส = "UTF-8"?>
<ข้อมูล xmlns:soap = "http://cxf.apache.org/bindings/soap">
<สบู่:ไอเท็ม>
<สบู่:ข้อมูล/>
</สบู่:รายการ>
</ข้อมูล>

"คุณยังสามารถเพิ่มความคิดเห็นใน XML หากต้องการเริ่มแสดงความคิดเห็น ให้ใช้ '<!--' หากต้องการสิ้นสุด ให้ใช้ '-->'"

ตัวอย่าง
<?xml version = "1.0" encoding = "UTF-8"?>
<data xmlns:soap = "http://cxf.apache.org/bindings/soap">
<soap:item>
<!-- <soap:info/> -->
</soap:item>
<!-- This is also a comment  -->
</data>

"ฉันเข้าใจจนถึงตอนนี้"

"สัญลักษณ์บางตัว (< > " &) มีความหมายพิเศษใน XML ดังนั้นจึงไม่สามารถใช้ที่อื่นได้ เราหลีกเลี่ยงข้อจำกัดนี้ได้ด้วย Escape Sequence ซึ่งเป็นชุดของอักขระที่ใช้แทนอักขระ/สัญลักษณ์อื่นๆ นี่คือบางส่วนของพวกเขา:"

ลำดับการหลบหนี สัญลักษณ์ที่มันแทนที่
& &
" «
< <
> >
' '

"และนี่คือตัวอย่างโค้ดที่ฝังอยู่ใน XML:"

รหัสจาวา รหัส Java ใน XML
if (a < b)
System.out.println("a is minimum");
<รหัส>
ถ้า (ก  <  ข)
 System.out.println( " a คือขั้นต่ำ" );
</code>

"เอ่อ... มันดูไม่ค่อยสวยเลย"

"คุณจะจำได้ว่าใน Java อักขระบางตัวจะถูก Escape ด้วยหรือไม่ ตัวอย่างเช่น "\" และลำดับนี้ต้องเขียนสองครั้งเมื่อเขียนไปยังสตริง ดังนั้นนี่จึงเป็นเหตุการณ์ทั่วไป"

"ตกลง."

"นั่นคือทั้งหมดที่ฉันมีสำหรับวันนี้"

"ไชโย ในที่สุดฉันก็ได้พักสักที"

ความคิดเห็น
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION