Ohjelmointi

Palvelinpuolen Java: Rakenna hajautettuja sovelluksia Java- ja XML-tiedostoilla

Laajennettava merkintäkieli tai XML on saanut laajaa suosiota tapana edustaa tietoja kannettavassa, toimittajan neutraalissa, luettavassa muodossa. Monet ohjelmistotoimittajat ovat ilmoittaneet "XML-tuesta", mikä tarkoittaa yleensä, että heidän tuotteensa tuottavat tai kuluttavat XML-tietoja.

XML: ää pidetään myös lingua francana yritysten välisessä tiedonvaihdossa. Sen avulla yritykset voivat sopia vaihdettavien tietojen XML-dokumenttityyppimäärityksistä (DTD). Nämä DTD: t ovat riippumattomia yritysten käyttämästä tietokantamallista.

Lähes kaikkia ihmisen pyrkimyksiä edustavat standardiryhmät sopivat DTD: stä tietojen vaihtamiseksi. Yksi monista esimerkeistä on International Press Telecommunications Council (katso Resurssit), joka on määritellyt XML DTD: n, joka sallii "uutisinformaation siirtämisen merkinnällä ja helposti muunnettavan sähköisesti julkaistavaan muotoon". Tällaisten vertikaalisten markkinastandardien avulla erilaiset sovellukset voivat vaihtaa tietoja ennakoimattomilla tavoilla.

Mutta mitä hyötyä kannettavista, toimittajan neutraaleista tiedoista on, jos et jaa ja käsittele niitä? Kyky kommunikoida ja käsitellä XML-tiedostoja hajautettujen tietokoneiden välillä on toivottavaa. Sovellus, joka kommunikoi ja käsittelee XML: ää tietokoneiden välillä, on itse asiassa a hajautettu sovellus.

Tässä artikkelissa käsitellään tällaisia ​​Java-sovelluksella kirjoitettuja hajautettuja sovelluksia. Keskityn XML-viestintään eri virtuaalikoneissa toimivien Java-koodien välillä.

XML-viestintä

World Wide Web Consortiumin tai W3C: n määrittelemä XML: n määrittely (katso Resurssit) määrittelee kielen syntaksin ja semantiikan. XML: n käsittelemiseksi XML-asiakirja on jäsennettävä. Olisi valitettavaa, jos jokaisen XML-prosessoinnin tarvitsevan Java-luokan tulisi jäsentää XML-asiakirja XML: n syntaksin ja semantiikan monimutkaisuuden vuoksi. Tämän ongelman ratkaisemiseksi W3C on määrittänyt DOM (Document Object Model) (katso Resurssit). DOM on sovellusohjelmoijan käyttöliittymä XML-tietoihin. Sitä on saatavana monilta ohjelmointikieliltä, ​​mukaan lukien Java. Java-ohjelmat voivat käyttää XML-tietoja DOM-sovellusliittymän kautta. XML-jäsentimet tuottavat XML-asiakirjan DOM-esityksen.

Kuva 1 kuvaa yksinkertaistettua mallia Java-hajautetusta sovelluksesta, joka käsittelee XML: ää. Malli riittää tämän artikkelin tarkoituksiin: XML-viestinnän tutkimiseen. Malli olettaa, että osa tiedoista saadaan tietolähteestä, kuten relaatiotietokannasta. Jotkut Java-koodit käsittelevät tietoja ja lopulta tuottavat DOM-esityksen. Tämä koodi on esitetty kuvassa 1 koodina prosessori.

Prosessorikoodi välittää XML-datan DOM-esityksen lähettäjä. Lähettäjä on Java-koodi, joka välittää XML-tiedot vastaanotin. Vastaanotin on Java-koodi, joka vastaanottaa XML-datan, tuottaa DOM-esityksen tiedoista ja välittää sen toiselle prosessorille. Lyhyesti sanottuna lähettäjä ja vastaanottaja abstrakti XML-tietojen DOM-esityksen viestintä.

Lähettäjä ja vastaanotin eivät ole toteutettu samassa Java-virtuaalikoneessa. Niitä yhdistää hajautettu järjestelmäinfrastruktuuri. Lähettäjän ja vastaanottajan toteuttamiseen on useita tapoja.

Huomaa, että kuvion 1 mallissa lähettäjä on vastaanottimen asiakas. Lähettäjä välittää XML: n vastaanottimelle. Toisessa mahdollisessa mallissa vastaanottaja on asiakas; se pyytää asiakirjaa lähettäjältä. En aio tutkia tämän artikkelin toista mallia, koska XML-viestinnän kysymykset ovat samanlaisia.