..
МОК контејнер је део који води рачуна о инстантиатинг Пролеће и конфигуришете објеката који се налазе у њој, које се зову пасуљ.
Пасуљ су конфигурисани кроз метаподатке које могу да се КСМЛ датотеке или Јаву белешке . По подразумеваној вредности, метаподаци чита само КСМЛ-а, да се омогући коришћење коментара нема потребе да конфигуришете АпплицатионЦонтект.
Као што је поменуто раније оквиру МОК-а и ДИ се реализује кроз БеанФацтори и АпплицатионЦонтект.
Као АпплицатионЦонтект је надскуп БеанФацтори, она препоручује, а од сада ћемо се односити само алл'АпплицатионЦонтект.
Постоје различите врсте обезбеђује пролеће АпплицатионЦонтект, у зависности од апликације морају да се развију.
На пример, за самостални апликације и ми смо ЦлассПатхКсмлАпплицатионЦонтект ФилеСистемКсмлАпплицатионЦонтект, док је за предузеће пријава је ВебАпплицатионЦонтект, који је кроз инстанце серлвет слушалац.
Све је потребно АпплицатионЦонтект конфигурацију метаподатака и онда морамо за циљ да прво напише КСМЛ датотеку.
Узмимо пример, поново користећи као референца управљање видеотеци и видите како се иницијализује МОК класе ВидеоМанагер.
Прво ми стварамо датотеку помоћу метаподатака које апплицатионЦонтект.кмл позив:
<беанс кмлнс="хттп://ввв.спрингфрамеворк.орг/сцхема/беанс" ............>
<- Увоз и других метаподатака ->
<импорт ресоурце="отхербеанс.кмл"/>
<- Дефиниција СЕРВИС ->
<беан ид="двдСервице" цласс="ит.мрвебмастер.ДвдСервицеИмпл" сцопе="синглетон" />
<- Видео Манагер ДЕФИНИЦИЈА ->
<беан ид="видеоМанагер" цласс="ит.мрвебмастер.ВидеоМанагер" сцопе="прототипе">
<проперти наме="двдСервице" реф="двдСервице" />
</ Бин>
</ Пасуљ>
Овај пример показује да је могуће интегрисати више фајлова дефиниције метаподатака као што је дато са циљем да подели пасуљ.
Тренутно је важно да разумете синтаксе метаподатака (који ће бити објашњено касније), али потенцијал пролећа.
Елиминише из класе конструктор за иницијализацију двдСервице ВидеоМанагер и створити геттерс и креатори за двдСервице:
јавни ВидеоМанагер () {
супер ();
}
<Двд> ГетАвалаиблеДвдЛист јавни листа () {
//......
аваилабеДвдЛист повратак;
}
публиц воид сетДвдСервице (ДвдСервице двдСервице) {
тхис.двдСервице = двдСервице;
}
јавне ДвдСервице гетДвдСервице () {
двдСервице повратак;
}
Хајде сада да видимо како се иницијализује МОК:
/ **
* Инстанз МОК контејнер
* /
АпплицатионЦонтект АпплицатионЦонтект ЦлассПатхКсмлАпплицатионЦонтект = нове ("апплицатионЦонтект.кмл");
/ **
* Преузми ВидеоМанагер класе
* /
ВидеоМанагер ВидеоМанагер = (ВидеоМанагер) апплицатионЦонтект.гетБеан ("ВидеоМанагер");
/ **
* Штампање листе доступних ДВД
* /
Листа <Двд> авалаиблеДвдЛист видеоМанагер.гетАвалаиблеДвдЛист = ();
за (ДВД ДВД: авалаиблеДвдЛист) {
Систем.оут.принтлн (двд.гетТитоло ());
}
Као што смо видели, писање неколико линија КСМЛ кода и били смо у могућности да у потпуности конфигурисати наше апликације.
Предности коришћења пролеће, које су описане у претходним поглављима издвајају:

Опет се позивам на наш пример смо могли користити ФилеСистемКсмлАпплицатионЦонтект ово:
АпплицатионЦонтект АпплицатионЦонтект ФилеСистемКсмлАпплицатионЦонтект = нове ("/ путања / апплицатионЦонтект.кмл");
Уместо да користе ВебАпплицатионЦонтект у ентерприсе апликација, потребно је да додате у веб.кмл (комплетан пример предузећа апликација која користи пролеће иллутрато ће бити последње поглавље овог водича):
<- ПРОЛЕЋЕ -> <цонтект-парам> <парам-наме> цонтектЦонфигЛоцатион </ парам-наме> <парам-валуе> цласспатх *: апплицатионЦонтект.кмл </ парам-валуе> </ Контекст-парам> <листенер> <листенер-цласс> орг.спрингфрамеворк.веб.цонтект.ЦонтектЛоадерЛистенер </ слушалац класе> </ Слушалац>
| |
Линук (курс)
Комплетан водич за опен-соурце систем. Од 49 €. |
| |
ПХП (курс)
Цео курс за креирање динамичких веб сајтова. Од 49 €. |
| |
Руби и Руби он Раилс (курс)
Израду софтвера и веб апликација са рубином и РОР. Од 39 €. |