Rumah Kewangan Peribadi Parsing XML dengan SAX - dummies

Parsing XML dengan SAX - dummies

Isi kandungan:

Video: iron-ajax… wat?! -- Polycasts #26 2024

Video: iron-ajax… wat?! -- Polycasts #26 2024
Anonim

Perkataan acara merangkumi semua jenis imej. Untuk bukan program, satu peristiwa adalah "sesuatu yang berlaku. "Jika anda digunakan untuk menangani tingkap dan bingkai di Jawa, maka anda mungkin memikirkan peristiwa sebagai kejadian yang membangkitkan sekeping kod. Sebagai contoh, klik tetikus pengguna atau kekunci pintar membuat kod yang menetapkan pilihan dan memaparkan kotak OK. Klik atau kekunci itu sendiri dipanggil acara kerana ia berlaku secara bebas daripada program yang dijalankan. Hanya pengguna yang tahu bila dia akan menekan butang itu. Dan apabila butang ditekan, sebahagian daripada program Java hanya bangun dan menangani keadaan. Senario ini dipanggil pengaturcaraan berasaskan acara .

Pengaturcaraan yang dipacu acara

SAX adalah didorong oleh peristiwa . Sebagai contoh, anda akan tidur untuk tidur malam yang baik. Anda menjangkau untuk menetapkan jam penggera anda dan kemudian menyelesaikannya, menutup mata anda, dan menjadi tidak sedarkan diri selama beberapa jam. Kemudian satu peristiwa penting berlaku: Masa tertentu tiba. Apabila acara berlangsung, jam penggera masuk ke mod "bangun" - dan membuat keadaan yang mengerikan untuk membangkitkan anda dari tidur yang tenang.

Berikut adalah satu lagi senario. Anda seorang eksekutif yang sibuk dan anda akan keluar selama beberapa jam, tetapi anda tidak mahu melepaskan sebarang perniagaan penting. Sebelum meninggalkan pejabat, anda memberitahu pembantu anda, "Panggil saya jika ada sesuatu yang penting. "Pengeluaran pesanan ini adalah serupa dengan menetapkan jam penggera. Anda memberitahu pembantu anda (jam penggera anda) untuk membangunkan anda jika acara berlaku. Membuat permintaan ini kepada pembantu anda (atau jam penggera anda) dipanggil pendaftaran . Dalam kedua-dua senario, anda mendaftar diri anda dengan perkhidmatan bangun. Selepas anda mendaftar, anda boleh mengejar aktiviti tidak aktif anda dengan santai, tanpa menghiraukan semua urusan sebenar sehingga berlaku beberapa peristiwa. Kemudian …

Cincin, cincin. Telefon bimbit anda sedang hollering pada anda. "Hello? "

" Hello. Ini pembantu awak. Saya mempunyai angka jualan untuk suku pertama. Mereka adalah 1 juta, 4 juta, dan 2 juta. "

" Mari lihat. Itulah jumlah 7 juta, "kata kamu. "Saya akan perhatikan pada PalmPilot saya. Terima kasih. "Kamu gantung.

Beberapa saat kemudian, anda mendapat panggilan lain. "Presiden Big Bucks, Inc., mahu menutup perjanjian itu. Mereka bercakap 10 juta dolar. "

"Hmm," awak balas. "Itu akan membawa pendapatan tahunan kami sehingga 17 megabucks. Saya akan menyimpan maklumat itu dalam aplikasi spreadsheet saya. Terima kasih kerana memanggil. "

Setiap interaksi ini dikenali sebagai panggilan balik .Terdahulu pada hari itu, apabila anda mendaftarkan hasrat anda dengan pembantu, anda meminta panggilan balik. Kemudian, apabila sesuatu peristiwa berlaku, pembantunya membuat panggilan balik untuk memaklumkan anda tentang acara tersebut. Dalam istilah pengaturcaraan Java, pembantu panggilan salah satu daripada banyak kaedah anda (salah satu subprogram Java anda).

Intipati pemrograman yang didorong oleh acara

Pengaturcaraan yang didorong oleh acara mempunyai tiga bahagian:

  • Pendaftaran: Anda mendaftarkan hasrat anda untuk dimaklumkan apabila kejadian berlaku. Anda mendaftarkan hasrat ini dengan sekeping kod lain - objek lain, biasanya sesuatu yang anda impor (seperti sekeping kod yang merupakan sebahagian daripada API orang lain). Objek ini kemudian menonton, dari belakang tabir, untuk kejadian yang anda tentukan.
  • Kejadian berlaku: Satu peristiwa tertentu berlaku.
  • Panggil balik: Sekeping kod lain melakukan panggilan balik. Salah satu kaedah anda akan dipanggil.

Dua jenis kod

Membezakan antara kod aktif dan kod pasif berguna:

  • Kod aktif mempunyai kaedah utama. Kod aktif, sebaik sahaja ia mula berjalan, mengambil peringkat pusat. Kod aktif mengandungi benang pelaksanaan yang mengawal keseluruhan permainan bola.
  • Kod pasif hanya duduk di sana, menunggu dipanggil. Kelas Dadu pasif tidak melakukan apa-apa sehingga beberapa kod lain memanggil Dadu. gulung().

Sekarang, anda mungkin berfikir bahawa kod pasif adalah semua yang anda perlukan untuk pengaturcaraan yang didorong oleh acara tetapi tidak. Untuk pengendalian peristiwa, anda memerlukan langkah pendaftaran ini. Kod pasif bermula dengan mendaftar dengan beberapa kod lain.

Untuk menguatkan tanggapan pendaftaran ini, fikirkan contoh dari dunia tikus, tingkap, dan butang di skrin. Anda membuat tingkap atau bingkai. Anda mahu bingkai anda bertindak balas terhadap klik mouse, jadi anda mengeluarkan arahan berikut:

. addMouseListener (ini);

Perintah ini mendaftarkan bingkai anda dengan butang. Perintah mengatakan, pada dasarnya, Setiap kali peristiwa tetikus berlaku, panggil salah satu kaedah pengendalian tetikus bingkai . Kemudian, apabila pengguna mengklik tetikus, bingkai mendapat panggilan balik. Komputer memanggil kaedah tetikusClick tetingkap.

Acara SAX

Pastinya, SAX adalah yang didorong oleh peristiwa, tetapi ini tidak bermakna program SAX menunggu klik tetikus. Sebaliknya, kod SAX mengikuti model daftar-peristiwa-panggilan balik yang diterangkan dalam beberapa perenggan terakhir. Setiap program SAX mempunyai dua keping kod yang sangat diperlukan:

  • Sekeping kod yang anda tulis - dipanggil pengendali . (Pengendali anda boleh memanjangkan kelas DefaultHandler yang telah ditulis sebelumnya.)
  • Pengendali adalah seperti eksekutif juta dolar pada bahagian sebelumnya.
  • Sekeping kod yang biasanya anda tidak menulis - parser . Parser memainkan peranan seperti pembantu eksekutif. Java 1. 4 API mempunyai parser terbina dalam. Anda membuat contoh parser ini, dan kemudian anda mendaftarkan pengendali anda dengan contoh parser itu. Sebenarnya, anda memberitahu contoh untuk memanggil semula pengendali anda setiap kali sesuatu berlaku.

Apa-apa yang berkaitan dengan XML adalah baru, dan masih dalam keadaan fluks. Kerana ini, terminologi ditambal bersama dalam beberapa cara yang unik. Semasa membangunkan versi SAX 2, sesetengah pakar mempunyai perayaan nama baru. Apa yang lazim disebut "parser" dimuatkan dalam antara muka Java bernama XMLReader. Sudah tentu ada kelas bernama org. xml. sax. Parser, tetapi kelas mendapat usang (yang bermaksud bahawa anda harus mengikisnya dari dasar kasut anda). Untuk membuat perkara menjadi lebih rumit, masih ada alat parsing lain, javax. xml. parsers. SAXParser. Anda menggunakan SAXParser ini untuk menjadikan diri anda seorang XMLReader. Dengan apa-apa nasib, anda akan menjadi terbiasa dengan istilah ini yang rumit. Buat masa ini, ingatlah bahawa apa yang disebut "parser" biasanya merupakan contoh XMLReader.

Senario daftar-dan-panggil balik adalah yang menjadikan acara SAX didorong. Sekarang perkara yang lucu adalah, acara SAX tidak ketara. Acara SAX tidak akan mengingatkan anda tentang kekunci pintasan atau klik butang. Dalam SAX, parser itu mengimbas dokumen XML dari atas ke bawah. Apabila parser menghadapi sesuatu yang menarik, parser memadamkan acara dan memanggil pengendali. Kemudian, ia terpulang kepada pawang untuk melakukan sesuatu mengenai pertemuan yang menarik ini.

Parsing XML dengan SAX - dummies

Pilihan Editor

Spotify Unlimited - dummies

Spotify Unlimited - dummies

Spotify Unlimited adalah cara yang cemerlang untuk mendengar semua muzik yang anda inginkan tanpa batas apa pun. Ia seperti orang yang istimewa yang membeli makanan dan minum sepanjang malam supaya anda tidak perlu risau mengenai bil tersebut. Ia seperti dapat tidur pada hujung minggu tanpa bimbang tentang kerja atau sama ada ...

Genre Spotify - dummies

Genre Spotify - dummies

Sama ada rock, tekno, pop, jazz, industri, indie pop, rakyat , klasik, logam berat, waltz, atau apa sahaja yang menarik minat anda, Spotify mempunyai genre, atau jenis muzik, dilindungi. Anda boleh mencari genre biasa dari dalam Spotify. Walaupun Spotify telah mengeluarkan senarai hampir 1,000 genre yang diketahui, tidak semua mereka akan menyampaikan ...

Mengemas kini Aplikasi Mudah Alih Spotify - dummies

Mengemas kini Aplikasi Mudah Alih Spotify - dummies

Apl mudah alih dikemas kini dengan keteraturan tanpa henti. Ia seolah-olah seperti ada setiap hari. Tetapi aplikasi sentiasa kerja sedang berjalan, dan Spotify adalah satu syarikat yang sentiasa mencari untuk berkembang dan meningkatkan produknya. Aplikasi juga dikemas kini untuk memperbaiki pepijat kecil dan kadang-kadang lebih serius. Tidak lama selepas masa lama ditunggu-tunggu ...

Pilihan Editor

Cara Menggunakan Fail dan Alat Capaian Pantas dalam Access 2016 - dummies

Cara Menggunakan Fail dan Alat Capaian Pantas dalam Access 2016 - dummies

Jika anda 'semula segar daripada menggunakan versi sebelum Office 2007 (XP dan sebelumnya), anda akan lega untuk melihat tab Fail dalam Akses 2016. Pengguna Office 2007 kehilangan perkataan biasa dalam antara muka versi itu, kemudian digantikan oleh butang Office , dengan tiada perkataan "Fail" yang menghiburkan. Fail perkataan datang kembali pada tahun 2010, ...

Cara menjalankan Wizard Pertanyaan di Access 2016 - dummies

Cara menjalankan Wizard Pertanyaan di Access 2016 - dummies

Dengan Access 'Query Wizard, maklumat jadual dan medan, dan Wizard Kueri Mudah menjaga hal-hal lain. Begini cara anda membuat pertanyaan: Di atas sekeping kertas, letakkan data yang anda inginkan dalam hasil pertanyaan anda. Permintaan mengembalikan lembaran data (tajuk lajur yang diikuti oleh baris data), jadi buat ...

Cara menjalankan Wizard Pertanyaan di Access 2013 - dummies

Cara menjalankan Wizard Pertanyaan di Access 2013 - dummies

Dengan Access 'Query Wizard, maklumat jadual dan medan, dan Wizard Kueri Mudah menjaga hal-hal lain. Berikut adalah cara anda membuat pertanyaan:

Pilihan Editor

10 Avuncular Cadangan untuk Word 2016 - dummies

10 Avuncular Cadangan untuk Word 2016 - dummies

Anda mungkin akan menghabiskan banyak masa dengan Word 2016. Jadi , mengapa tidak menggunakan semua helah perdagangan? Berikut adalah sepuluh perkara nasihat pemproses kata yang mesra dan berguna. Simpan kertas pencetak, toner, dan bekalan yang berguna Pejabat elektronik adalah mitos. Bersama dengan pemproses perkataan anda, anda memerlukan bekalan pejabat dunia sebenar. ...

Secara automatik Isi Kata dengan Word 2003 AutoText - dummies

Secara automatik Isi Kata dengan Word 2003 AutoText - dummies

Ciri AutoTeks dalam Word 2003 secara automatik selesai menulis perkataan bahawa anda telah mula mengeja. Katakanlah bahawa anda sedang menulis Novel Besar Amerika Syarikat yang akan memaparkan Christopher sebagai wira anda. Daripada mengeja Christopher berkali-kali, anda hanya menaip beberapa huruf nama dan kotak pop timbul. Ia mengatakan: Christopher: (Tekan ENTER untuk Masukkan). ...

Dasar File Menu Word 2013 - dummies

Dasar File Menu Word 2013 - dummies

Di Word 2013, mengklik tab File membuka menu Fail, dikenali sebagai pandangan Backstage. Paparan belakang pentas menyediakan akses kepada arahan yang ada kaitan dengan fail data yang anda bekerjasama - perkara seperti menyimpan, membuka, mencetak, menghantar, dan menyemak sifatnya. Untuk meninggalkan pandangan Backstage, klik beberapa tab lain atau tekan ...