foråret java baseret konfiguration

, du har set, hvordan vi få foråret bønner med xml - konfiguration fil.hvis du er komfortabel med xml - konfiguration, så vil jeg sige, at det er ikke forpligtet til at lære at gå videre med java baseret konfiguration, fordi du er på vej til at nå det samme resultat ved hjælp af en af de konfigurationer, der er til rådighed, java baseret konfiguration mulighed gør dig i stand til at skrive de fleste af deres foråret konfiguration uden xml, men ved hjælp af par java - baseret kommentarer er forklaret nedenfor., @ konfiguration & @ bean kommentarer:, diskutere en klasse med, @ konfiguration, viser, at klasse kan anvendes i foråret ioc beholder som en kilde til bean definitioner.den @ bean, anmærkning fortæller forår, en metode, forsynet med @ bean vil vende tilbage med en genstand, der skal registreres som en bønne i foråret anvendelse sammenhæng.den enkleste @ konfiguration klasse ville være som følger:, pakke com.tutorialspoint; import, org. springframework. sammenhæng. anmærkning. *; @ konfiguration offentlige klasse helloworldconfig {@ bean offentlige helloworld helloworld() {tilbage nye helloworld();), ovenfor kode skal være lig med følgende xml - konfiguration:, < bønner > < bean id = "helloworld" klasse = "kom. tutorialspoint. helloworld" /> < /bønner > her metoden navn forsynet med @ bean fungerer som bønne - id, og det skaber og returnerer faktiske bean.din konfiguration klasse kan have erklæring for mere end én @ bean.når din konfiguration klasser er defineret, du kan lade &, give dem til foråret beholder ved hjælp annotationconfigapplicationcontext som følger: offentlige statisk tomrum vigtigste (string [] args) (applicationcontext ctx = nye annotationconfigapplicationcontext (helloworldconfig. klasse); helloworld helloworld = ctx. getbean (helloworld. klasse); helloworld. setmessage ("hej!"); helloworld. getmessage();}, du kan lade forskellige konfiguration klasser som følger: offentlige statisk tomrum vigtigste (string [] args) (annotationconfigapplicationcontext ctx = nye annotationconfigapplicationcontext(); ctx. register (appconfig.class, otherconfig. klasse); ctx. register (additionalconfig. klasse); ctx. refresh(); myservice myservice = getbean ctx. (myservice. klasse); myservice. dostuff();}, f.eks.: lad os arbejde overskygge ide på plads og følge følgende foranstaltninger for at skabe et forår anvendelse:, stepdescription 1create et projekt med et navn, springexample, og skabe en pakke, com.tutorialspoint under, src, folder i lavet projekt.2add, der kræves i foråret biblioteker med føje eksterne krukker, valgmulighed, som forklaret i foråret - verden f.eks. kapitel.3because du bruger java baseret kommentarer, så er man også nødt til at tilføje, cglib.jar, fra din java - anlæg, fortegnelse, asm.jar, bibliotek, som kan downloades fra, asm. ow2. org.4create java - klasser, helloworldconfig,, helloworld, og mainapp under, com.tutorialspoint, pakke.det sidste skridt er at skabe indholdet af alle java - filer og bean konfiguration fil, og den anvendelse, som forklaret nedenfor.her er indholdet af helloworldconfig.java, fil:, pakke com.tutorialspoint; import, org. springframework. sammenhæng. anmærkning. *; @ konfiguration offentlige klasse helloworldconfig {@ bean offentlige helloworld helloworld() {tilbage nye helloworld();}}, er indholdet af helloworld.java, fil:, pakke com.tutorialspoint; offentlige klasse helloworld (private streng besked, offentlige eller setmessage (string - meddelelse) (this.message = budskab.} offentlige tomrum getmessage() {system. println ("din besked:" + meddelelse)), som er indholdet af det, mainapp.java, fil:, pakke com.tutorialspoint; import org.springframework.context.applicationcontext; import org.springframework.context.annotati. *; offentlige klasse mainapp {offentlige statisk tomrum vigtigste (string [] args) (applicationcontext ctx = nye annotationconfigapplicationcontext (helloworldconfig. klasse); helloworld helloworld = ctx. getbean (helloworld. klasse); helloworld. setmessage ("hej!"); helloworld. getmessage();}}, når du er færdig med at skabe alle de papirer og tilføjelse af supplerende kilde til biblioteker, lad os løbe anvendelse.man bør bemærke, at der er ingen konfiguration dokumentation, der kræves.hvis alt er i orden med din ansøgning, vil dette aftryk følgende budskab: budskabet: hej verden!, intravenøse bean afhængighed: når @ bønner har afhængighed af hinanden, gav udtryk for, at afhængighed er så enkelt, som under en bønne metode til en anden som følger:, pakke com.tutorialspoint; import, org. springframework. sammenhæng. anmærkning. *; @ konfiguration offentlige klasse appconfig {@ bean offentlige foo foo() {tilbage nye foo (bar());} @ bean offentlige bar bar() {tilbage nye bar();}}, foo - modtager en henvisning til bar via konstruktøren injektion.lad os se et eksempel: eks.: - lad os arbejde overskygge ide på plads og følge følgende foranstaltninger for at skabe et forår anvendelse:, stepdescription 1create et projekt med et navn, springexample, og skabe en pakke, com.tutorialspoint under, src, folder i lavet projekt.2add, der kræves i foråret biblioteker med føje eksterne krukker, valgmulighed, som forklaret i foråret - verden f.eks. kapitel.3because du bruger java baseret kommentarer, så er man også nødt til at tilføje, cglib.jar, fra din java - anlæg, fortegnelse, asm.jar, bibliotek, som kan downloades fra, asm. ow2. org.4create java - klasser, texteditorconfig,, texteditor, jo, og mainapp under, com.tutorialspoint, pakke.det sidste skridt er at skabe indholdet af alle java - filer og bean konfiguration fil, og den anvendelse, som forklaret nedenfor.her er indholdet af texteditorconfig.java, fil:, pakke com.tutorialspoint; import, org. springframework. sammenhæng. anmærkning. *; @ konfiguration offentlige klasse texteditorconfig {@ bean offentlige texteditor texteditor() {tilbage nye texteditor (spellchecker())} @ bean offentlige jo spellchecker() {tilbage nye jo ()), er indholdet af texteditor.java, fil:, pakke com.tutorialspoint; offentlige klasse texteditor (private, jo jo, offentlige texteditor (jo jo) (system. println ("i texteditor konstruktøren.") this.spellchecker = jo;} offentlige tomrum spellcheck() {jo. checkspelling();}} efterer indholdet af et andet af klasse fil, jo -:, pakke com.tutorialspoint; offentlige klasse jo {offentlige spellchecker() {system. println ("i jo konstruktøren.");} offentlige tomrum checkspelling() {system. println ("i checkspelling.")), som er den indhold det, mainapp.java, fil:, pakke com.tutorialspoint; import org.springframework.context.applicationcontext; import, org. springframework. sammenhæng. anmærkning. *; offentlige klasse mainapp {offentlige statisk tomrum vigtigste (string [] args) (applicationcontext ctx = nye annotationconfigapplicationcontext (texteditorconfig. klasse); texteditor te = ctx. getbean (texteditor. klasse); te.spellcheck()), når du er færdig med at skabe alle de papirer og tilføjelse af supplerende kilde til biblioteker, lad os løbe anvendelse.man bør bemærke, at der er ingen konfiguration dokumentation, der kræves.hvis alt er i orden med din ansøgning, vil dette aftryk følgende budskab: i jo konstruktøren.i texteditor konstruktøren.i checkspelling.den @ import anmærkning:,, @ import, anmærkning giver mulighed for lastning @ bean definitioner fra en anden sammensætning, klasse.mener, at en configa klasse som følger:, @ konfiguration offentlige klasse configa {@ bean offentlige en a() {tilbage nye a();}}, du kan importere over bean erklæring i en bønne erklæring som følger:, @ konfiguration @ import (configa. klasse) offentlige klasse configb {@ bean offentlige b a() {tilbage nye a();}}, snarere end for at specificere både configa.class og configb.class, når instantiating forbindelse, kun configb skal leveres som følger: offentlige statisk tomrum vigtigste (string [] args) (applicationcontext ctx = nye annotationconfigapplicationcontext (configb. klasse); //nu begge bønner a - og b - vil være til rådighed.a = ctx. getbean (a.class); b = b - ctx. getbean (b.class)}, livscyklus callbacks:, @ bean anmærkning støtter med angivelse af vilkårlige initialization og destruktion callback metoder, ligesom foråret xml - er lokalitet metode og ødelægge metode attributter på bean element: offentlige klasse foo (offentlige eller init() {////////initialization logik} offentlige tomrum cleanup() (//ødelæggelse logik}} @ konfiguration offentlige klasse appconfig {@ bønne (initmethod = "lokalitet", destroymethod = "udrensning") offentlige foo foo() {tilbage nye foo();), med angivelse af bean anvendelsesområde:, default anvendelsesområde er singleton, men man kan omgå denne med @ anvendelsesområde anmærkning:, @ konfiguration offentlige klasse appconfig {@ bean @ anvendelsesområde ("prototype ") offentlige foo foo() {tilbage nye foo(),),



Previous:
Next Page: