30 top servlet interview questions
Най-често задаваните въпроси и отговори за интервюта за сървлети, които да ви помогнат при подготовката на интервюто:
Тази поредица от въпроси за Servlet ще ви преведе през всяко интервю за Servlet.
Той включва всичко за това какво е Servlet, защо servlet е влязъл в картината, жизнения цикъл на servlet и неговите методи, Зареждане при стартиране, WAR файл, Дескриптор на внедряване и неговата функция и файл за добре дошли и неговото значение.
Също така ще научим как работи сървлетът, сътрудничество на сървлети, конфигуриране на сървлета, контекст на сървлета, проследяване на сесията и техники и предимства, събития, филтър, неговия принцип на работа и значението му.
Интервюиращият винаги очаква някои отговори в реално време във вашия отговор, които се оказват полезни при интервютата. Следователно, ако преминете внимателно през всички тези въпроси и ако сте в състояние да го обясните със свои думи, тогава можете да преминете през интервю.
Най-добри въпроси за интервюта за сървлети
Ето кратък списък на някои от важните въпроси, обхванати в тази статия:
- Какво е Servlet?
- Видове сървлет
- Жизнен цикъл на сървлета
- Методи на жизнения цикъл на сървлета
- Как работи сървлетът?
- WAR файл и неговото използване?
- Какво е Load on Start-up и неговото значение?
- Какво представлява дескрипторът за разполагане?
- Процедура за сътрудничество на сървлети
- Какво е RequestDispatcher?
- Какво представляват методът SendRedirect и неговото използване?
- Относно конфигурацията на Servlet и контекста на Servlet
- Относно проследяването на сесиите и неговите техники
- „Бисквитки“, скрити полета за формуляри, URL и др
- Относно Събития
- Какво е филтър и видове филтри?
Нека започнем с подробни отговори.
В # 1) Какво имаш предвид под Сервлет?
Отговор: Servlet е мощен механизъм, който се използва за създаване на уеб приложения.
Той е зает от страната на сървъра и помага за генериране на динамични уеб страници, като цяло действа като посредник между входящата HTTP заявка от браузъра и базата данни.
Servlet се основава на Java Language, поради което е стабилен и се нарича език за програмиране от страна на сървъра.
Горната диаграма обяснява потока на Servlet.
Искане идва от уеб страницата към сървлета, сървлетът пренасочва заявката към съответната JSP страница и JSP страницата изпраща отговора като страница с резултати, която е видима за потребителя.
Препоръчително четене = >> Въпроси за интервю за JSP
В # 2) Какво представлява CGI и какви са неговите недостатъци?
Отговор: CGI означава Common Gateway Interface, който представлява набор от кодове, написани от страна на сървъра, който се използва за взаимодействие през уеб сървъра с клиент, работещ на уеб сървър.
Той взема входящата заявка и за всяка нова заявка стартира нов процес.
Недостатъци на общия интерфейс на шлюза:
- Тъй като създава нов процес за всяка входяща заявка, ако броят на входящите заявки е по-голям, тогава генерираният отговор ще бъде много бавен, което от своя страна намалява ефективността.
- CGI зависи от платформата.
В # 3) Какви са предимствата на Servlet пред CGI?
как да създам масив от родов тип в java
Отговор: Предимствата на сървлета са както следва:
- Servlet създава нишка за всяка входяща заявка и не обработва, като по този начин е по-бърза.
- Servlet е независим от платформата, тъй като се основава на Java Programming Language.
- Тъй като се основава на Java, той е и надежден и сигурен.
В # 4) Как се изпълнява сървлет в код?
Отговор: Сервлетът може да бъде реализиран в код чрез просто разширяване на класа Httpservlet или общ сървлет.
В # 5) Каква е разликата между Http Servlet и Generic Servlet?
Отговор: Generic Servlet може да обработва всички видове заявки. Тъй като има метод service (), той е независим, докато Http Servlet разширява общия сървлет и поддържа HTTP методите като doGet (), doPost (), doHead (), doTrace () и т.н.
В # 6) Какви са методите на жизнения цикъл на сървлета?
Отговор: По принцип има три метода на жизнения цикъл на сървлета.
Това са:
- В него ()
- Обслужване ()
- Унищожи ()
Q # 7) Обяснете жизнения цикъл на Servlet.
Отговор: Жизненият цикъл на сървлета е обяснен с позоваване на диаграмата по-долу.
- Първоначално класът Servlet се зарежда според заявката, получена от клиента.
- След това се създава новият екземпляр или обект на сървлет. Създава се само един обект за всеки жизнен цикъл.
- След това се извиква методът Init (), използван за инициализиране на сървлета.
Синтаксис: public void Init ()
- Методът Service () се извиква всеки път, когато е получена нова заявка за извършване на някакви операции.
Синтаксис: публична невалидна услуга ()
- След това се извиква методът за унищожаване, за да се извърши операцията по почистване.
Синтаксис: унищожи ()
Диаграма на потока на сървлетите
В # 8) Какво представлява уеб контейнерът и каква е неговата отговорност?
Отговор: Уеб контейнерът се нарича също контейнер на Servlet и се използва за взаимодействие със Servlet и съдържа всички Servlet, JSP, XML файлове в него. Уеб контейнерът управлява жизнения цикъл на сървлета и помага за съпоставяне на URL адреса с конкретен сървлет. Уеб контейнерът създава обекта на сървлет.
В # 9) С какво методът Get () се различава от метода Post ()?
Отговор: Причините, поради които методът Get () е предпочитан пред метода Post (), са дадени по-долу.
Метод Get ():
- Тук може да се изпрати конкретно количество данни или информация, докато данните се изпращат през заглавката.
- В метода Get () данните не са защитени, тъй като са изложени в URL лентата на потребителя.
- Методът Get () може да бъде маркиран.
- Като цяло методът get () е по-ефективен и се използва над метода post ().
Post () метод:
- Тук огромно количество данни или информация могат да бъдат прехвърлени, тъй като данните се изпращат през тялото.
- Тъй като данните в метода Post () се изпращат през тялото, те са защитени.
- Методът Post () не може да бъде маркиран.
- Като цяло методът Post () е по-малко ефективен и не се използва често.
В # 10) Какво представлява Servlet цикъл или верига?
Отговор: Цикълът на сървлета е процес, при който изходът на един сървлет се дава като вход за друг сървлет, а последният изход на сървлета се счита за действителен изход, който се предоставя на клиента.
Този процес се постига чрез интерфейса на диспечера на заявки.
Въпроси за интервю за .net уеб услуги
В # 11) Как два или три сървлета ще взаимодействат или комуникират помежду си?
Отговор: Има два процеса, при които сървлетите могат да комуникират помежду си.
- Заявка за интерфейс на диспечера
- Верига на сървлети
В # 12) Обяснете диспечера на заявките и неговите методи.
Отговор: Request Dispatcher създава обект, който е отговорен за получаване на заявки от браузъра или клиента и след това ги навигира до всякакви ресурси като Servlets, JSP или HTML, който се намира от страната на сървъра.
Има основно два метода на Request Dispatcher:
а) Метод Forward ():
- В метода Forward () клиентът изпраща заявката до Servlet1.
- Servlet1 обработва заявката и след това я препраща към Servlet2.
- Сервлетът2 обработва заявката и генерира отговор, който от своя страна се изпраща обратно на клиента като окончателен отговор.
б) Метод Include ():
- В метода Include () клиентът изпраща заявката до Servlet1.
- Servlet1 обработва заявката и след това включва заявката и я изпраща на Servlet2.
- Servlet2 обработва заявката и отново я изпраща обратно на Servlet1 и
- Servlet1 генерира отговор, който от своя страна се изпраща обратно на клиента като окончателен отговор.
В # 13) Каква е ползата от метода Send Redirect ()?
Отговор: Методът Send Redirect (), който работи от страна на клиента, се използва за пренасочване на отговора към друг ресурс като Servlet, JSP, HTML.
Синтаксис: void send Redirect (URL);
Пример: response.sendredirect („http://www.google.com”);
В # 14) С какво методът Forward () се различава от метода Send Redirect ()?
Отговор:
Метод Forward ():
- Използва се за изпращане на същата заявка до друг ресурс.
- Той работи от страната на сървъра в сървъра.
Изпращане на метод за пренасочване ():
- Винаги изпраща нова заявка към ресурсите, тъй като използва URL.
- Работи от страна на клиента както отвън, така и отвътре в сървъра.
В # 15) Обяснете WAR файла?
Отговор: WAR файлът се нарича основно уеб архивиран файл, който съдържа всички файлове на вашето приложение, като XML, сървлети, JSP, HTML, конфигурационни файлове, обединени в един файл, така че внедряването на приложението ще бъде лесно и лесно.
Препоръчително е да се използва WAR файл за разполагане.
В # 16) Какво имате предвид под контекста на Servlet?
Отговор: Контекстът на сървлета се нарича основно обект, който има информация относно приложението и уеб контейнера. С контекста на Servlet можем да регистрираме събития, да получаваме URL адреса на конкретния ресурс и лесно да съхраняваме атрибутите за други сървлети, които да използваме.
Основното предимство на Servlet е, че е лесно да се поддържа и действа като посредник между контейнера и servlet.
Има някои важни методи за контекст на сървлета, които са дадени по-долу:
- getInitParameter () - връща стойността на параметъра.
- getInitParameterNames () - връща името на параметъра.
- void setAttribute () - използва се за задаване на стойностите на атрибутите.
- void getAttribute () - използва се за получаване на стойностите на атрибутите.
- void removeAttribute () - използва се за премахване на атрибута.
В # 17) Какви точно са функциите на Servlet?
Отговор: Функциите, изпълнявани от сървлетите, са както следва:
- Първо, Servlets получава HTTP заявката, която се изпраща от страна на клиента.
- Прочита заявката и извлича данните от нея.
- След извличане на информацията, сървлетите извършват операция на бизнес логика чрез достъп до база данни или извикване на EJB.
- И накрая, той генерира отговор и го изпраща на клиента под формата на HTTP или изпраща отговора на JSP страницата.
В # 18) Какво имате предвид под дескриптора на внедряване?
Отговор: Казва се, че WEB.XML е дескриптор за разполагане в сървлет.
Това е входната точка за всяко приложение и притежава списък с файлове за добре дошли. Той дефинира ресурси, информация за това кой сървлет ще бъде използван и съответства на сървлета към URL.
Въпрос # 19) Обяснете проследяването на сесията и нейното значение?
Отговор: Проследяването на сесии е процес, при който данните на клиента или потребителя могат да се поддържат.
Както всеки път, когато нова заявка дойде на сървъра, сървърът не може да разпознае, че новата заявка идва от същия клиент, за да се избегне този проблем се използва техниката за проследяване на сесията.
Проследяването на сесии играе жизненоважна роля за разпознаване на клиента или заявката.
В # 20) Кои са различните техники за проследяване на сесии?
Отговор:
По принцип има четири вида техники, които са дадени по-долу:
а) бисквитки: Бисквитките са малка информация, която се добавя към множество клиентски заявки.
Пример: Една заявка идва към сървъра, сървърът добавя няколко бисквитки с отговора, сега, когато отново същият клиент изпраща заявката до сървъра, сървърът разпознава потребителя.
б) Скрито поле на формуляра: Тук използваме скрито текстово поле за поддържане на състоянието на потребителя.
в) Пренаписване на URL: Тук даваме допълнителна връзка за следващия сървлет, който трябва да бъде картографиран.
г) Http сесия: Тук се генерира специфичен ID за всеки потребител, така че сървърът може да разпознае потребителя.
В # 21) Какви са събитията на Servlet?
Отговор: Събитията не са нищо друго освен събития. Дори промяната на състоянието на обекта също е събитие.
Класовете на събитията и интерфейсът са както следва:
- Класове: ServletRequestEvent, ServletContextEvent, HttpSessionEvent и др.
- Интерфейси: ServletRequestListner, ServletContextListner, HttpSessionListner и др.
В # 22) Какво имате предвид под филтър и как работи?
Отговор: Филтърът се използва основно за филтриране на нещата.
По подобен начин Филтърът в сървлета е обект, който се въвежда при предварителната обработка на заявката и последващата обработка на заявката. Неговите основни функции включват преобразуване, криптиране и декриптиране на стойности, проверка на въвеждането на данни за улавяне на IP адреса и запаметяване на всички входящи заявки.
Филтърът е дефиниран в web.xml и той може да бъде премахнат от web.xml, така че няма нужда да променяте сървлета, което води до намаляване на разходите.
Диаграма на работещия филтър за сървлети
Въпрос # 23) Обяснете натоварването при стартиране и неговото значение?
Отговор: Зареждане при стартиране е елемент, дефиниран в web.xml (дескриптор на разполагане), който помага на сървлета да се зареди по време на разполагането, докато сървърът се рестартира.
Причината да се използва натоварване при стартиране е, тъй като сървлетът се зарежда при първата получена заявка, така че първоначално отнема повече време за зареждане в резултат на намалена ефективност, ако дефинираме заем при стартиране е товари сървлета при рестартиране на сървъра, което увеличава ефективността.
Натоварването при стартиране също работи върху две стойности:
- Положителни (0,1,2,3 ...): Първо ще се зареди най-ниската положителна стойност.
- Отрицателно: Сервлетът ще бъде зареден при получаване на първата заявка.
В # 24) Синхронизиран ли е сървлет?
Отговор: Не, сървлетите не са синхронизирани. Ако искаме да направим сървлета синхронизиран, трябва да внедрим SingleThreadInterface.
В # 25) Какво имате предвид под Scope Object и какви са неговите видове?
Отговор: Обектите за обхват помагат за споделяне на информация между уеб компонентите чрез setattribute () и getattribute ().
алгоритъм на дървото за решения при извличане на данни
Видовете обекти на обхвата са:
- Уеб контекст
- Сесия
- Заявка
- Страница
В # 26) За какво се отнася терминът Локализация?
Отговор: Локализацията основно се отнася до местната традиция или език, следван от потребителя. И така, ние добавяме ресурси или елементи към конкретния уебсайт, като добавяне на езика хинди, за да може всеки потребител да разбере.
В # 27) Ако сървлетът получи множество заявки, колко обекта ще създаде?
Отговор: Servlet ще създаде само един екземпляр, независимо колко входящи заявки получава.
Q # 28) Каква е основната разлика между Servlet и Applet?
Отговор: Основната разлика между Servlet и Applet е, че Servlet се намира от страната на сървъра, докато Applet се намира от страната на клиента в уеб браузъра.
В # 29) Възможно ли е да има конструктор вътре в сървлета?
Отговор: Да, възможно е да се дефинира конструктор вътре в сървлет, но той може да бъде извикан само от контейнера на Сервлет, а не изрично.
В # 30) Назовете пакетите, които работят със Servlet?
Отговор: По принцип има два пакета, които работят със Servlet, както е показано по-долу:
- Javax.servlet
- Javax.servlet.http
В # 31) Какви са видовете HTTP заявки?
Отговор: Видовете HTTP заявки включват:
- Вземете
- Публикувай
- Глава
- Настроики
- Слагам
- Проследяване
- Изтрий
В # 32) Каква е основната разлика между контекстния параметър и контекстния атрибут?
Отговор: Основната разлика между двете е,
Контекстният параметър е стойност, съхранявана в дескриптора за разполагане, т.е. web.xml, и се зарежда по време на процеса на внедряване. Докато Контекстният атрибут е стойностите, които се задават динамично и могат да се използват в цялото приложение.
Въпрос # 33) Какъв е процесът за свързване на сървлет?
Отговор: Сервирането на вериги е много прост процес, при който даваме изхода на един сервлет като вход за друг сървлет.
Първо, трябва да създадем RequestDispatcher за ресурс, който трябва да бъде верижен. След това трябва да зададем стойностите на атрибутите за заявката, ако е необходимо. След това трябва да извикаме метода forward () или да включим () метод за обект RequestDispatcher.
Сигурен съм, че бихте получили ясна представа за това какво представлява Servlet!
Пожелаваме на всички успех !!
Препоръчително четене
- Интервюирайте въпроси и отговори
- Въпроси и отговори за интервю за ETL тестване
- Топ 30+ популярни въпроси и отговори за интервю за краставици
- Топ 30 SAS интервюта въпроси и отговори
- Топ 30 Въпроси и отговори за тестване на сигурността
- 30+ Топ въпроси и отговори за интервю за Scrum [СПИСЪК 2021]
- Топ 30 въпроси и отговори за интервюта на СУБД
- 30 най-важни PL / SQL интервюта Въпроси и отговори през 2021 г.