Pengendalian Ruang Nama XML dalam Pertanyaan Java XPath
Di Java, apabila menanyakan XML dengan XPath, ruang nama boleh memberikan cabaran. Apabila XML tidak mengandungi ruang nama, pertanyaan XPath boleh menjadi mudah, tetapi kehadiran ruang nama memperkenalkan kerumitan.
Kes 1: XML Tanpa Ruang Nama
Untuk XML tanpa ruang nama, XPath pertanyaan menggunakan ruang nama lalai, yang sebenarnya bukan ruang nama. Dalam kes ini, pertanyaan seperti "/buku kerja/helaian/helaian[1]" boleh mendapatkan semula elemen dengan mudah.
Kes 2: XML Dengan Ruang Nama
Walau bagaimanapun, XML dengan ruang nama seperti berikut menambah kerumitan:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <workbook xmlns="http://schemas.openxmlformats.org/spreadsheetml/2006/main" xmlns:r="http://schemas.openxmlformats.org/officeDocument/2006/relationships"> <sheets> <sheet name="Sheet1" sheetId="1" r:id="rId1"/> </sheets> </workbook>
Dalam kes sedemikian, ungkapan XPath "/workbook/sheets/sheet[1]" akan gagal kerana elemen terikat pada "http://schemas. openxmlformats.org/spreadsheetml/2006/main". ruang nama dengan awalan dan gunakannya dalam pertanyaan XPath, menjadikannya lebih mudah dibaca dan diselenggara.
Padanan Generik dengan Predikat: Tanpa pendaftaran ruang nama, ungkapan XPath yang lebih kompleks boleh digunakan :
Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan Ruang Nama XML dalam Pertanyaan Java XPath?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!