Примери ЈСП програма: Регистрација & амп; формулар за пријављивање

Преглед садржаја:

Anonim

У овом упутству ћемо развити узорке програма са ЈСП и користећи МВЦ архитектуру.

Следе примери програма, биће развијени -

  • Образац за регистрацију
  • Образац за пријаву и одјаву

Користећи образац за регистрацију путем ЈСП-а

У формулару за регистрацију имаћемо образац за попуњавање свих података који ће садржати име, корисничко име, лозинку, адресу, контакт број итд.

Овај образац ће нам помоћи да се региструјемо за пријаву. Узимају све наше детаље и чувају их у бази података или кеш меморији.

У овом примеру ћемо узети „Гуру образац за регистрацију“ који има следећа поља:

  1. Име
  2. Презиме
  3. Корисничко име
  4. Лозинка
  5. Адреса
  6. Контакт број

Након попуњавања свих ових детаља имамо дугме за слање, на клик на то дугме биће сачувани сви детаљи.

Регистер_1.јсп

<% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру образац за регистрацију <боди><х1> Гуру образац за регистрацију <форм ацтион = "гуру_регистер" метход = "пост"> <табле стиле = "са: 50%"> <тр> <тд> Име  <тд> <инпут типе = "тект" наме = "фирст_наме" />   <тр> <тд> Презиме  <тд> <инпут типе = "тект" наме = "ласт_наме" />   <тр> <тд> Корисничко име  <тд> <инпут типе = "тект" наме = "усернаме" />   <тр> <тд> Лозинка  <тд> <инпут типе = "пассворд" наме = "пассворд" />   <тр> <тд> Адреса  <тд> <инпут типе = "тект" наме = "аддресс" />   <тр> <тд> Контакт бр.  <тд> <инпут типе = "тект" наме = "цонтацт" />    <инпут типе = "субмит" валуе = "Субмит" /> 

Објашњење кода:

Линија кода 11: Овде преузимамо име обрасца које има акцију, тј. Сервлет којем ћемо обрађивати захтев, а име сервлета је гуру_регистер.јава. Захтев ће бити обрађен ПОСТ методом.

Редак 14-16: Овде користимо тип уноса као текст, а име је име

Линија кода 18-20: Овде узимамо тип уноса као текст, а име је презиме

Линија кода 22-24: Овде узимамо тип уноса као текст, а име је корисничко име

Линија кода 26-28: Овде узимамо тип уноса као лозинку (ово ће сакрити лозинку кад се унесе) и име као лозинку

Линија кода 30-32: Овде узимамо тип уноса као текст, а име као адресу

Линија кода 34-36: Овде узимамо тип уноса као текст, а име као контакт

Линија кода 37: Овде узимамо дугме типа субмит и вредност је такође субмит. Кликом на ово дугме акција ће ићи на одговарајући сервлет гуру_регистер где ће све вредности параметара бити прослеђене у захтеву.

Гуру_регистер.јава

пакет демотест;импорт јава.ио.ИОЕкцептион;импорт јавак.сервлет.РекуестДиспатцхер;импорт јавак.сервлет.СервлетЕкцептион;импорт јавак.сервлет.хттп.ХттпСервлет;импорт јавак.сервлет.хттп.ХттпСервлетРекуест;импорт јавак.сервлет.хттп.ХттпСервлетРеспонсе;/ *** Класа имплементације сервлета гуру_регистер* /јавна класа гуру_регистер проширује ХттпСервлет {приватни статички финал лонг сериалВерсионУИД = 1Л;заштићена воид доПост (захтев ХттпСервлетРекуест, одговор ХттпСервлетРеспонсе) баца СервлетЕкцептион, ИОЕкцептион {// ТОДО Аутоматски генерисани квар методеСтринг фирст_наме = рекуест.гетПараметер ("фирст_наме");Стринг ласт_наме = рекуест.гетПараметер ("ласт_наме");Стринг усернаме = рекуест.гетПараметер ("корисничко име");Стринг пассворд = рекуест.гетПараметер ("лозинка");Адреса низа = рекуест.гетПараметер ("адреса");Стринг контакт = рекуест.гетПараметер ("контакт");иф (фирст_наме.исЕмпти () || ласт_наме.исЕмпти () || усернаме.исЕмпти () ||лозинка.исЕмпти () || адреса.исЕмпти () || цонтацт.исЕмпти ()){РекуестДиспатцхер рек = рекуест.гетРекуестДиспатцхер ("регистер_1.јсп");рек.инцлуде (захтев, одговор);}иначе{РекуестДиспатцхер рек = рекуест.гетРекуестДиспатцхер ("регистер_2.јсп");рек.форвард (захтев, одговор);}}}

Објашњење кода:

Линија кода 14: Овде дефинишемо гуру_сервлет који проширује ХттпСервлет.

Линија кода 18: Ова метода акције доПост () која ће се позвати када поменемо ПОСТ у атрибуту акције у горњем ЈСП облику.

Линија кода 20-25: Овде дохваћамо вредности из захтева и.ефирст_наме, ласт_наме, корисничко име, лозинка, адреса и контакт помоћу рекуест.гетПараметер.

Линија кода 27-32: Овде узимамо иф ако проверавамо било који од параметара који се преузимају из захтева да ли су празни или не. Ако је било који параметар празан, ући ће у овај услов (фирст_наме.исЕмпти () || ласт_наме.исЕмпти || усернаме.исЕмпти || пассворд.исЕмпти || аддресс.исЕмпти || цонтацт.исЕмпти ()) и имамо за преузимање објекта РекуестДиспатцхер помоћу објекта захтева који ће проследити захтев на регистер_1.јсп. Овде такође уврштавамо објекте захтева и одговора.

Линија кода 33-37: Овај случај ће се извршити када било који параметар није празан. Морат ћемо дохватити рекуестДиспатцхер објекат помоћу објекта захтјева који ће прослиједити захтјев на регистер_2.јсп. Овдје просљеђујемо објекте захтјева и одговора.

Регистер_2.јсп

<% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру страница за успех <боди><а> <б> Корисник добродошлице !!!!  

Објашњење кода:

Шифра 10: Овде кажемо добродошао корисник. Овај ЈСП ће се позвати када се попуне сви параметри.

Када извршите горњи код, добићете следећи излаз:

Излаз:

Када кликнемо на регистер_1.јсп, добићемо образац који ће садржати детаље као што су име, презиме, корисничко име, лозинка, адреса, контакт. Сви детаљи су попуњени. Када кликнемо на дугме за слање, добијамо поруку као "Добродошли корисник"

Образац за пријаву и одјаву

Као и образац за регистрацију, ми ћемо имати образац за пријаву и одјаву.

У овом примеру смо узели образац за пријаву где имамо два поља „корисничко име“ и „лозинка“ са дугметом за слање.

Када кликнемо на дугме за слање, добијамо поруку добродошлице са дугметом за одјаву.

Када кликнемо на дугме за одјаву, враћамо се на образац за пријаву.

Регистер_3.јсп

<% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру образац за пријаву <боди><форм ацтион = "гуру_логин" метход = "пост"> <табле стиле = "са: 50%"> <тр> <тд> Корисничко име  <тд> <инпут типе = "тект" наме = "усернаме" />   <тр> <тд> Лозинка  <тд> <инпут типе = "пассворд" наме = "пассворд" />    <инпут типе = "субмит" валуе = "Логин" /> 

Објашњење кода:

Линија кода 10: Овде узимамо назив обрасца који има акцију, тј. Сервлет на који је прешао је гуру_логин.јава. Метода кроз коју ће проћи свој ПОСТ.

Линија кода 13-16: Овде узимамо поље за унос „корисничко име“ које је типа текста.

Линија кода 17-20: Овде узимамо поље за унос „лозинка“ које је типа лозинке.

Линија 22: Овде узимамо дугме „субмит“ са вредношћу „Логин“ на које кликнемо, а затим се иде на сервлет гуру_логин где се оба поља узимају помоћу објекта захтева.

Гуру_логин.јава (сервлет)

пакет демотест;импорт јава.ио.ИОЕкцептион;импорт јавак.сервлет.РекуестДиспатцхер;импорт јавак.сервлет.СервлетЕкцептион;импорт јавак.сервлет.хттп.ХттпСервлет;импорт јавак.сервлет.хттп.ХттпСервлетРекуест;импорт јавак.сервлет.хттп.ХттпСервлетРеспонсе;/ *** Класа имплементације сервлета гуру_логин* /јавна класа гуру_логин проширује ХттпСервлет {јавни гуру_логин () {супер ();// ТОДО Аутоматски генерисани стуб конструктора}заштићена воид доПост (захтев ХттпСервлетРекуест, одговор ХттпСервлетРеспонсе) баца СервлетЕкцептион, ИОЕкцептион {// ТОДО Аутоматски генерисани квар методеСтринг усернаме = рекуест.гетПараметер ("корисничко име");Стринг пассворд = рекуест.гетПараметер ("лозинка");иф (усернаме.исЕмпти () || пассворд.исЕмпти ()){РекуестДиспатцхер рек = рекуест.гетРекуестДиспатцхер ("регистер_3.јсп");рек.инцлуде (захтев, одговор);}иначе{РекуестДиспатцхер рек = рекуест.гетРекуестДиспатцхер ("регистер_4.јсп");рек.форвард (захтев, одговор);}}}

Објашњење кода:

Редак 5-9: Овде увозимо неопходни увоз у коду.

Линија кода 14: Овде узимамо гуру_логин сервлет који проширује ХттпСервлет.

Линија 21: Овде користимо методу доПост () као у обрасцу који користимо ПОСТ методу.

Линија кода 23-24: Овде узимамо параметре користећи објекат захтева тј. Корисничко име и лозинку.

Линија кода 25-29: На овај начин узимамо услов „ако“ где проверавамо корисничко име и лозинку да ли су празни или не. У овом случају ако су празни, добијамо рекуестдиспатцхер објекат који прослеђује на регистер_3.јсп са објектима захтева и одговора.

Линија кода 30-34: Ово ће се извршити ако оба нису празна, а затим прослеђује захтев на регистер_4.јсп са објектима захтева и одговора.

Регистер_4.јсп

<% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру пријављен <боди> <табле стиле = "са: 50%"> <тр> <тд> <% Стринг корисничко име = рекуест.гетПараметер ("корисничко име"); %><а> Добродошли <% оут.принтлн (корисничко име); %> Корисник !!!! Пријављени сте.   <тр><тр><тд><тд> <тд> <а хреф="регистер_3.јсп"> <б> Одјава   < / тд> 

Објашњење кода:

Ред 12. кода: Овде добијамо параметар „усернаме“ од објекта захтева у корисничком имену објекта стринга.

Шифра 13: Овде имамо поруку добродошлице са корисничким именом.

14. ред ретка: Овде повезујемо за одјаву образац који преусмерава на регистер_3.јсп.

Када извршите горњи код, добићете следећи излаз:

Излаз:

Овде када кликнемо на регистер_3.јсп добијамо два поља „корисничко име“ и „лозинка“ са дугметом за пријаву.

Након што кликнете на дугме Пријави, добићете доњу поруку са дугметом Одјава.

Када кликнете на дугме за одјаву враћате се на страницу за пријављивање