Позивање даљинског метода је начин на који програмер користи и његово развојно окружење на даљину. Све о томе како предмета на различитим рачунарима комуницирају у дистрибуираној мрежи. У овом чланку о удаљеном позивању метода у Јави, рећи ћу вам како да креирате РМИ апликацију на клијенту и серверу.
У овом чланку су обрађене следеће теме:
Хајде да почнемо!
Шта је РМИ у Јави?
Тхе РМИ (Ремоте Метход Инвоцатион) је АПИ који пружа механизам за креирање дистрибуиране апликације у . РМИ омогућава објекту да позива методе на објекту покренутом у другом . Позивање даљинским методом омогућава даљинску комуникацију између апликација помоћу два објекта стуб и скелет .
Разумевање Стуба и Костура
Стуб објект на клијентској машини гради информациони блок и шаље те информације серверу. Блок се састоји од:
како радити овлашћења у јави
- Идентификатор удаљеног објекта који ће се користити
- Назив методе на који се треба позвати
- Параметри за удаљени ЈВМ
Објекат костура
Скелетни објекат прослеђује захтев са крвавог објекта на удаљени објекат. Обавља следеће задатке:
Позива жељену методу на стварном објекту који је присутан на серверу.
Параметре примљене од објекта клизача прослеђује методи.
Са овим, идемо даље и погледајте како да направите РМИ апликацију
Кораци за креирање РМИ апликације
Следећи кораци помажу вам да креирате РМИ апликацију:
- Дефинисање даљинског управљача приступ
- Имплементација даљинског интерфејса
- Стварање Стуба и скелета предмета из класе имплементације користећи РМИЦ (РМИ цомплиер)
- Покрените РМИ регистар
- Креирајте и извршите серверски апликативни програм
- Направите и извршите клијентски апликативни програм
Сада, уђимо у детаље ових корака.
Корак 1: Дефинисање удаљеног интерфејса
Прва ствар коју морамо да урадимо је да створимо приступ . Ово ће пружити опис метода на које се могу позвати удаљени клијенти. Овај интерфејс треба да прошири даљински интерфејс, а прототип методе унутар интерфејса треба да баци РемотеЕкцептион.
// Креирање увоза интерфејса за претрагу јава.рми. * Јавни интерфејс Претрага се проширује на даљину {// Декларирање прототипа методе јавним Стринг Куери (Стринг сеарцх) баца РемотеЕкцептион}
Корак 2: Имплементација удаљеног интерфејса
Следећи корак је примена удаљеног интерфејса. Да би се имплементирао удаљени интерфејс, класа треба да се прошири на Класа УницастРемотеОбјецт пакета јава.рми . Такође, подразумевано градитељ треба створити за бацање јава.рми.РемотеЕкцептион из свог матичног конструктора.
// Јава програм за примену интерфејса за претрагу импорт јава.рми. * Импорт јава.рми.сервер. * Јавна класа СеарцхКуери проширује УницастРемотеОбјецт имплементира Сеарцх {// Дефаулт конструктор за избацивање РемотеЕкцептион из свог матичног конструктора СеарцхКуери () баца РемотеЕкцептион {супер ( )} // Имплементација јавног упита за низ стрингова (претрага низа) баца РемотеЕкцептион {Стринг резултат иф (сеарцх.екуалс ('Рефлецтион ин Јава')) ресулт = 'труе' елсе ресулт = 'фалсе' ретурн ресулт}}
Корак 3: Стварање Стуб и Скелетон објеката из класе имплементације помоћу рмиц-а
Алат РМИЦ користи се за позивање РМИ компајлера који креира објекте Стуб и Скелетон. Његов прототип је назив класе РМИЦ.
КОРАК 4: Покрените РМИрегистри
Требате покренути услугу регистра издавањем наредбе у наредбеном ретку за покретање РМИрегистри
КОРАК 5: Креирајте и извршите серверски апликативни програм
Следећи корак је креирање апликационог програма сервера и његово извршавање у посебном командном ретку.
Сервер програм користи цреатеРегистри метода класе ЛоцатеРегистри за креирање рмирегистри-а унутар ЈВМ сервера са бројем порта који је прослеђен као аргумент.
Метода поновног повезивања класе Наминг користи се за повезивање удаљеног објекта са новим именом.
// програм за серверску апликацију импорт јава.рми. * импорт јава.рми.регистри. * јавна класа СеарцхСервер {публиц статиц воид маин (Стринг аргс []) {три {// Креирајте објекат класе имплементације интерфејса Сеарцх обј = нови СеарцхКуери () // рмирегистри унутар ЈВМ сервера са // бројем порта 1900 ЛоцатеРегистри.цреатеРегистри (1900) & лтп стиле = 'тект-алигн: јустифи' & гт // Везује удаљени објекат именом // едурека Наминг.ребинд ( 'рми: // лоцалхост: 1900' + '/ едурека', обј)} цатцх (Изузетак ае) {Систем.оут.принтлн (ае)}}}
Корак 6: Креирајте и покрените програм за клијентске апликације
Последњи корак је стварање програма клијентске апликације и његово извршавање у посебном командном ретку. Метода претраживања класе Наминг користи се за добијање референце објекта Стуб
Горе наведени клијентски и серверски програм се извршава на истој машини и зато се користи лоцалхост. Да би приступио удаљеном објекту са друге машине, лоцалхост треба заменити ИП адресом на којој се налази удаљени објекат.
Дакле, ово нас доводи до краја РМИ у чланак. Надам се да вам је било информативно и да сте вам помогли у разумевању основа.
Погледајте Едурека, поуздана компанија за учење на мрежи са мрежом од више од 250 000 задовољних ученика раширених широм света. Овде смо да вам помогнемо у сваком кораку на путовању, јер поред тога што постављате питања о јава интервјуу, осмислили смо наставни план и програм који је дизајниран за студенте и професионалце који желе да буду Јава Програмер. Курс је дизајниран да вам пружи почетну предност у Јава програмирању и обучи вас како за основне тако и за напредне Јава концепте, заједно са разним Јава оквирима попут Хибернате & Спринг.
Имате питање за нас? Молимо вас да га помињете у одељку за коментаре овог чланка „РМИ у Јави“ и јавићемо вам се у најкраћем могућем року.