Ua uma ona i ai lau polokalama faakomepiuta, ae o loʻo e manaʻomia pea se auala sili atu ona aoga e mafai ai e au faʻaoga faʻapitoa ona faʻalauteleina le tulaga.
E ui lava ina lauiloa le OSGi i le tele o atinaʻe Java, o le tuʻufaʻatasia i totonu o lau oloa atonu e foliga mai o se galuega faigata. O le leai o se manino e uiga i galuega sa'o a le OSGi ua atili ai ona fa'alavelave le auala agai i luma.
E ese mai i soʻo se mea latou te manaʻo e faʻataʻitaʻi i ai, e sili atu le lagona o le OSGi i le taumafai e folau i le vasa lautele i le tele o atinaʻe Java.
O lenei tusiga o le a faʻafeiloaʻi oe ile OSGi Felix spring tutorial e faʻaaoga ai se polokalama tuusaʻo ma alu i ai, ona lelei, ma isi faʻamatalaga taua.
O le a la le OSGi?
O le fatuina ma le tufatufaina o modules ma vaega e mafai ona maua e le Java framework ua taʻua o le OSGi (Open Service Gateway Initiative).
O lo'o fa'amamafaina ai le fa'apipi'iina o galuega ma so'o fa'atasi, lea e ofoina atu ai le tele o fa'amanuiaga i tagata atia'e, e aofia ai galuega fa'atino e faigofie ona fa'afeiloa'i i le va o tulafono fa'apogai ma su'ega e le mana'omia ai le fa'alagolago e le uma.
E fa'afefea ona galue le OSGi?
O se vaega faʻamalosia mo Java o loʻo faʻamatalaina e se seti o faʻamatalaga e taʻua o le OSGi. O nei fa'amatalaga fa'apitoa e mafai ai ona fa'atupuina se fa'ata'ita'iga mai le tele o vaega ona fa'apipi'iina lea i fusi.
O 'au'aunaga fa'apitonu'u ma feso'ota'iga e fa'aogaina e nei vaega e feso'ota'i ai. O le fa'atatauina o le fa'atonuga autu o le polokalame e pei ona mafai ai, o le fa'amoemoe lea. O fesoʻotaʻiga maualuga i le va o lenei code ma le tele o vaega e mafai.
O elemene fau fale e mafai ona fa'aaogaina e ta'ua o vaega. Mafaufau i foliga e pei o se faʻatauga faʻatau mo lau 'upega tafaʻilagi e-commerce poʻo se talosaga totogi mo lau aufaigaluega pulega.
E mafai e vaega ona fa'aoga le OSGi e natia ai a latou fa'atinoga mai isi vaega ma na'o le tu'uina atu o fa'amatalaga talafeagai ia i latou e ala i auaunaga.
E taofia ai vaega mai le suia fa'afuase'i o fa'amaumauga e le tatau ona latou maua ma pulea fa'alagolago.
O fesoʻotaʻiga uma i le va o vaega i totonu o se OSGi talosaga e faia e ala i auaunaga i se lalolagi lelei. O le Java package o lo'o i ai le API o lo'o fa'amaonia mo auaunaga.
O le galulue faʻatasi i le va o le auʻaunaga ma tagata faʻatau e manaʻomia le faʻaogaina o vasega ma / poʻo fesoʻotaʻiga, lea e fausia ai le API.
O vaega uma o le OSGi o loʻo faʻapipiʻi faʻatasi i fusi, o ia mea taʻitasi e aofia ai punaoa latou te manaʻomia e faʻatino ai. O fusi e matua manino lava i mea latou te manaʻomia mai le siosiomaga ma mea latou te mafaia.
faamanuiaga
- O talosaga OSGi e mafai ona avanoa i fale teu oloa i fafo.
- O le fa'ava'a e fa'atagaina ai le fa'ata'ita'iina o auaunaga ile tulaga ole module.
- E mafai ai ona fa'atautaia fa'aliliuga ma fa'alagolago o fusi fa'atatau e fa'aopoopo i le fa'avasegaina ma fa'afaigofie le tu'ufa'atasia o faletusi a isi vaega.
- O talosaga e sili atu ona fetuutuunai i suiga mana'oga, sili atu ona feavea'i, ma vave ona toe fa'ainisinia.
- A 'upega tafaʻilagi polokalama e mafai ona fa'apipi'iina e avea o se vaega o fa'aputuga OSGi fa'atasi ma se olaga fa'aolaola fa'afetai i le fa'aogaina o le fa'avae ma le fa'ata'ita'iga polokalame Java EE.
- Nai lo le faʻapipiʻiina o se faletusi lona tolu o se vaega o le talosaga, o le faʻavae e tuʻuina atu ai le faʻasalalauga faʻasalalauga ma faʻataʻitaʻiina iunite faʻataʻitaʻiga o le Spring Framework i se tulaga faʻapitoa e tuʻuina atu o se vaega o le taimi o le server application.
- Mo talosaga fa'atasi o lo'o faia i fa'aputuga fa'aliliuga fa'atasi ai ma fa'ata'amilosaga fa'aolaola, o lo'o ofoina mai e le auivi le tu'ufua.
- O lo'o i ai se fale teu oloa tu'ufa'atasia e mafai ona teuina fa'asoa masani ma fa'aliliuga fa'aaoga e le tele o tusi talosaga, e taofia ai talosaga ta'itasi mai le fa'aogaina o se kopi eseese o faletusi fa'asoa ta'itasi.
Amata ile OSGi Felix spring
Mauaina o Punaoa
E ala i le siiina mai o le lomiga lata mai a Apache Karaf mai lenei 'upega tafailagi, e mafai ona amata la tatou malaga OSGi.
Faʻavae i luga o Apache Felix, o le Apache faʻatinoga o le OSGi faʻapitoa, Apache Karaf e tuʻuina atu se faʻavae mo talosaga faʻavae OSGi.
Ua saunia e Karaf ni vaega fesoasoani eseese i luga o Felix o le a fesoasoani ia i tatou e faamasani i tatou lava i le OSGi, e pei o se laina laina laina e mafai ai ona tatou fesootai ma le tulaga.
Auala e ulufale ai mo fusi
E tatau ona fa'apipi'i se talosaga e fai ma fa'aputuga OSGi a'o le'i mafai ona fa'atino i totonu ole si'osi'omaga OSGi. E le gata i lea, o le tusi talosaga e tatau ona faʻamaonia; e le'o le fa'aoga masani a le lautele static void main(String[] args).
Sei o tatou amata i le fatuina o se "Talofa Lalolagi” talosaga e faavae ile OSGi.
Matou te amata i le faʻavaeina o se OSGi API faʻalagolago:
Ole taimi ole OSGi ole a maua le avanoa ile faʻalagolago, o lea e le manaʻomia ai le faʻapipiʻi. O le mea lea, ua fa'ailogaina ua tu'uina atu.
Sei o tatou fatuina le vasega HelloWorld tuusaʻo:
O vasega e fai ma mea e ulufale ai mo fusi e tatau ona faʻatinoina le faʻaogaina o le OSGi-provided BundleActivator interface.
A faʻalauiloa le fusi o loʻo i ai lenei vasega, o le OSGi platform e taʻua le amataga () galuega. I le isi itu, a'o le'i taofia le fusi, ua ta'ua le galuega taofi().
Aua ne'i galo o fusi ta'itasi e na'o le tasi le BundleActivator. O auala uma e lua e mafai ona fesoʻotaʻi ma le OSGi runtime e faʻaaoga ai le mea BundleContext o loʻo tuʻuina atu.
Fausia o se fusi
Fai le pom.xml o se fusi OSGi moni e ala i le faia o suiga talafeagai.
E tatau ona tatou faailoa manino muamua atu o la tatou sini o le faia lea o se fusi.
Ma, matou te faʻaogaina le maven-bundle-plugin e faʻapipiʻi ai le HelloWorld vasega o se OSGi bundle, faʻaaloaloga a le Apache Felix community:
O tau o ulutala OSGi matou te manaʻo e faʻapipiʻi i le faila MANIFEST a le fusi o loʻo faʻamaonia i le vaega o faʻatonuga.
O le Bundle-Activator o le igoa fa'apitoa lea o le fofo o le BundleActivator o le a fa'aaogaina e amata ma taofi le fusi. E fetaui ma le vasega faatoa faia.
E ui e le o se ulutala OSGi, o le Private-Package header e faʻatonuina le plugin e faʻaopoopo le afifi i le fusi ae naʻo le le faʻaogaina i isi plugins. O le mvn install command e tatau ona faʻaaoga e fatu ai le fusi.
Fa'apipi'i ma Fa'agaoioi le Fusi
Sei o tatou amata Karaf i le faʻatinoina o le poloaiga lenei:
lea o le "KARAF HOME" e faasino i le faila lea na faatuina ai Karaf. E mafai ona matou faʻaogaina le poloaiga lenei e faʻapipiʻi ai le fusi pe a faʻaalia le faʻamafanafanaga a Karaf:
O le faʻaaogaina o le fale teu oloa a Maven o le auala lea e taʻu atu ai Karaf e uta le fusi.
I le toe faafoiina o le ID numera o le fusi, ua tusia e Karaf. Atonu e ese le ID lea e fuafua i le tele o fusi na fa'apipi'i muamua. Ua uma ona faʻapipiʻiina le fusi, ma o le faʻatonuga e faʻalauiloa ai e faʻapea:
O le taimi lava e te tatalaina ai le afifi, "Hello World by Jay" faʻaalia. E mafai nei ona tatou taofi ma aveese le fusi e faʻaaoga ai:
O loʻo faʻaalia e le faʻamafanafanaga le "Tofa le Lalolagi e Jay."
iʻuga
E mafai e tagata atiaʻe ona faigofie ona faʻaopoopoina galuega fou i se 'upega tafaʻilagi o loʻo iai aʻo faʻamautu ma vavae ese mai isi vaega o le polokalame autu e ala i le faʻaogaina o le OSGi.
Ua matou aʻoaʻoina e uiga i le OSGi i lenei pou, e aofia ai pe faʻafefea ona galue, ona lelei, ma se polokalama tuusao. E le faigata ona fa'aofi le OSGi i lau lava talosaga.
Fiafia coding!
Tuua se tali