Programiranje

Pozdravljeni, OSGi, 2. del: Uvod v vzmetne dinamične module

Če ste bili pred kratkim poslušani, ste verjetno že veliko slišali o storitveno usmerjenem razvoju aplikacij z OSGi in Spring Dynamic Modules. V tem drugem članku v seriji Hello, OSGi ugotovite, zakaj je Spring DM tako razburljiva možnost za razvijalce, ki že poznajo konfiguracijo Spring, ki želijo izkoristiti modularnost OSGi, enostavno različico in podporo za življenjski cikel aplikacije.

OSGi, znan tudi kot sistem dinamičnih modulov za Javo, določa modularni pristop k razvoju aplikacij Java in niz standardiziranih metod za upravljanje odvisnosti med moduli. Projekt Spring Dynamic Modules for OSGi Service Platforms (Spring DM) vam omogoča izdelavo aplikacij Spring, ki jih je mogoče namestiti v vsebnik OSGi. Za razvijalce Java Enterprise, ki poznajo model programiranja in konfiguracije Spring, je Spring DM enostavnejši način za seznanitev z modularnim pristopom OSGi k razvoju aplikacij. Poleg tega, da razvijalcem Spring omogoča, da dostopajo do modularnega okvira in dinamične konfiguracije OSGi, Spring DM zagotavlja nizko nivojsko kodiranje, ki ga zahteva večina aplikacij OSGi, tako da se lahko osredotočite na poslovno logiko vaše aplikacije.

Prvi članek v tej seriji ("Pozdravljeni, OSGi, 1. del: Paketi za začetnike") je predstavil standardni pristop k razvoju OSGi z uporabo OSGi API in odprtokodne implementacije vsebnika Equinox. Spoznali ste arhitekturo OSGi, zlasti vsebnike in svežnje, in imeli prve izkušnje z razvojem aplikacije Hello World, ki temelji na OSGi. Primer aplikacije ni potekal zelo globoko, ker je bil cilj preprosto razumeti osnove OSGi.

V tem članku boste zgradili še eno aplikacijo Hello World, tokrat z uporabo Spring Spring ogrodja. Izvedeli boste, kaj je Spring DM in kako izkorišča OSGi-jevo ločevanje aplikacijske logike na module, kot tudi njeno izvrševanje meja modulov. Naučili se boste tudi, kako uporabljati Spring DM za naslednje:

  • Dinamično namestite, posodobite in odstranite module v delujočem sistemu.
  • Z dinamičnim odkrivanjem in uporabo storitev, ki jih nudijo drugi moduli v sistemu, gradite storitveno usmerjene aplikacije (SOA).
  • Uporabite Spring's Vir podatkov razred za instanciranje, konfiguriranje, sestavljanje in okrasitev komponent znotraj in med sistemskimi moduli.

Kot boste videli, vam bo uporaba Spring DM osvobodila nekaj običajnega dela in še težjega dela pri razumevanju dogajanja pod pokrovom z OSGi. Posledično boste lahko poglobili svojo logiko aplikacije in to storili prej v razvojnem procesu.

Če želite slediti primerom v tem članku, boste potrebovali razvojno okolje, sestavljeno iz Eclipse 3.3 in Spring Dynamic Modules. Za zaključno vajo boste potrebovali tudi RDBMS, kot je Apache Derby. Spodaj boste našli več o nastavitvi vašega razvojnega okolja Spring DM v Eclipse 3.3.

OSGi in spomladanski okvir

Trenutno je priljubljenost OSGi zelo v porastu. Številni aplikacijski strežniki so bili prepakirani, da bi izkoristili modularni okvir OSGi, vključno z IBM-ovim WebSphere Application Server, BEA-jevo microService Architecture (mSA) in JOnAS 5, odprtokodnim aplikacijskim strežnikom, zgrajenim na osnovi arhitekture OSGi. JBoss je prav tako nedavno napovedal svoje delo na nalagalniku razredov, ki temelji na OSGi, in namero, da bo ustvaril izvedbo osrednje specifikacije OSGi. Morda je najpomembneje, da je mehanizem kontejnerjev / izvajalnih komponent OSGi Fundacije Eclipse nedavno povišan na status najvišje ravni projekta, kjer bo služil kot osnova za novo pobudo Eclipse Runtime.

Še preden je OSGi dosegel trenutni porast priljubljenosti, se je govorilo o združitvi s Spring. Sčasoma je ta pogovor privedel do projekta Spring Dynamic Modules for OSGi Service Platforms. Funkcionalnost Spring DM lahko razdelimo na dve glavni komponenti: Prvič, ponuja Spring Frame JAR-je v obliki svežnjev OSGi. Kot veste iz prejšnjega članka v tej seriji, svežnji OSGi niso nič drugega kot datoteke Java Archive (JAR), ki vsebujejo dodatne vnose v META-INF / MANIFEST.MF datoteka, ki deluje kot deskriptor razmestitve za sveženj OSGi. (Upoštevajte, da datoteke JAR pri uporabi OSGi ne morete namestiti neposredno; jo morate spakirati v obliki svežnja OSGi.)

Drugič, Spring DM ponuja tri svežnje Spring / JAR, specifične za OSGi:

  • org.springframeork.osgi.bundle.extender
  • org.springframeork.osgi.bundle.core
  • org.springframeork.osgi.bundle.io

Aplikacije, zgrajene z uporabo Spring DM, so zgrajene drugače kot tiste, ki uporabljajo Spring Spring. Ko zgradite Pomlad podatke o konfiguraciji definirate v eni ali več konfiguracijskih datotekah Spring, ki so večinoma datoteke XML. Okvir Spring uporablja te konfiguracijske datoteke za ustvarjanje predmeta konteksta aplikacije ob zagonu aplikacije. Po ustvarjenem kontekstu aplikacije se uporablja za instanciranje, konfiguriranje, sestavljanje in okrasitev predmetov v aplikaciji.

$config[zx-auto] not found$config[zx-overlay] not found