Питання для співбесіди JSP (2025)

питання для співбесіди jsp

Ви готуєтеся до співбесіди JSP і шукаєте додаткову впевненість? Цей посібник допоможе вам! Ми підібрали найважливіші питання та відповіді на співбесіді JSP, створені, щоб відточити ваші знання та дати вам конкурентну перевагу. Незалежно від того, чи ви освіжаєте основні поняття, чи досліджуєте нові ідеї, цей посібник підготує вас до того, щоб легко впоратися з викликами співбесіди. Давайте кинемося і перетворюємо ці нерви на співбесіду на впевненість!

Питання для співбесіди JSP для першокурсників

1) Поясніть JSP і розкажіть про його використання.

JSP означає Java Сторінки сервера. Це технологія рівня презентації, яка не залежить від платформи. Він поставляється з платформами SUN J2EE. Вони схожі на сторінки HTML, але з Java фрагменти коду, вбудовані в них. Вони зберігаються з розширенням .jsp. Вони компілюються за допомогою компілятора JSP у фоновому режимі та генерують сервлет зі сторінки.

👉 Безкоштовне завантаження PDF: JSP Interview Questions & Answers


2) Які вимоги до бібліотеки тегів?

Набір власних тегів називається бібліотекою тегів. Повторювані завдання обробляються легше та повторно використовуються в кількох програмах для підвищення продуктивності. Вони використовуються розробниками веб-додатків, які зосереджені на презентації, а не на доступі до бази даних чи інших служб. Серед популярних бібліотек – бібліотека тегів String і бібліотека відображувальних тегів Apache.


3) Поясніть технологію JSP.

JSP є стандартним розширенням Java і визначається поверх розширень Servlet. Його мета — спростити керування та створення динамічних веб-сторінок. Він не залежить від платформи, безпечний і використовує Java як мова сценаріїв на стороні сервера.


4) Поясніть неявні об’єкти в JSP.

Об’єкти, створені веб-контейнером і містять інформацію щодо певного запиту, програми чи сторінки, називаються Неявні об’єкти. Вони є :

  • відповідь
  • виняток
  • додатку
  • запросити
  • Сесія
  • сторінка
  • з
  • конфиг
  • pageContext
Запитання для співбесіди JSP
Запитання для співбесіди JSP

5) Як можна запобігти багаторазовим надсиланням через натискання кнопки оновлення?

Використовуючи шаблон Post/Redirect/Get або PRG, цю проблему можна вирішити.

1) Заповнена користувачем форма надсилається на сервер методом POST або GET. Оновлено стан у базі даних і бізнес-модель.

2) Відповідь перенаправлення використовується для відповіді сервлетом для перегляду сторінки.

3) Перегляд завантажується браузером за допомогою команди GET, і дані користувача не надсилаються. Це безпечно від багаторазового надсилання, оскільки це окрема сторінка JSP.


6) Чи розширюється технологія JSP?

Так, JSP легко розширюється за допомогою використання та модифікації тегів або спеціальних дій, інкапсульованих у бібліотеках тегів.


7) Розрізняйте response.sendRedirect(url) і .

<jsp.forward> елемент пересилає об’єкт запиту з 1 файлу JSP до іншого. Target файл може бути HTML, сервлетом або іншим файлом JSP, але він має бути в тому самому контексті програми, що й файл JSP для пересилання.

sendRedirect надсилає браузеру відповідь тимчасового перенаправлення HTTP. Потім браузер створює новий запит для перенаправленої сторінки. Це вбиває змінні сеансу.


8) Чи можна отримати доступ до наступного запиту за допомогою коду сервлета, якщо атрибут запиту вже надіслано в його JSP?

Запит виходить за межі області дії, тому до нього неможливо отримати доступ. Однак, якщо атрибут запиту встановлено в сервлеті, тоді до нього можна отримати доступ у його JSP.

JSP — це серверний компонент, і сторінка перекладена на a Java сервлет, а потім виконується. Виводиться лише код HTML.


9) Як включити статичні файли на сторінку JSP?

Статичні сторінки завжди включаються за допомогою директиви JSP include. Таким чином включення виконується на етапі перекладу один раз. Зауважте, що для атрибута файлу необхідно вказати відносну URL-адресу. Хоча статичні ресурси можуть бути включені, це не є кращим, оскільки кожен запит вимагає включення.


10) Чому JComponent має методи add() і remove(), а Component — ні?

JComponent є підкласом Container. Він містить інші компоненти та JComponents.


Питання для співбесіди JSP для досвідчених професіоналів

Нижче наведено запитання та відповіді на співбесіді JSP для досвідчених кандидатів:

11) Як реалізувати сторінку JSP, безпечну для потоків?

Це можна зробити, реалізувавши їх за допомогою інтерфейсу SingleThreadModel. Додайте директиву <%@page isThreadSafe=”false” %> на сторінку JSP.


12) Як можна запобігти кешування виводу JSP або сторінки сервлету браузером?

Використання відповідних атрибутів заголовка HTTP для запобігання кешування динамічного вмісту, виведеного сторінкою JSP, у браузері.


13) Як обмежити відображення помилок на сторінці JSP?

Налаштувавши атрибут «ErrorPage» каталогу PAGE для назви сторінки помилки на сторінці JSP, а потім на сторінці помилки jsp встановивши «isErrorpage=»TRUE», можна зупинити відображення помилок.


14) Що таке дії JSP?

Це XML-теги, які спрямовують сервер до використання існуючих компонентів або контролюють поведінку JSP Engine. Вони складаються з типового префікса «jsp:» і назви дії.

<jsp:include/>
<jsp:getProperty/>	 	
<jsp:forward/>
<jsp:setProperty/>
<jsp:usebean/>
<jsp:plugin/>

15) Розрізняйте і <%@include file=…>.

Обидва ці теги містять інформацію від однієї сторінки до іншої.

Перший тег діє як виклик функції між двома Jsp. Він виконується кожного разу, коли клієнт отримує доступ до сторінки клієнта. Корисно модульувати веб-додаток. У вихідні дані включено новий вміст.

Вміст другого тегу файлу є текстово вбудованим із подібною директивою. Змінений вміст не включається у вихідні дані. Це корисно, коли код з одного jsp потрібен декільком jsp.


16) Чи можна використовувати конструктор замість init() для ініціалізації сервлета?

Так, можливо. Але це не є кращим, оскільки init() було розроблено раніше Java версії не могли динамічно викликати конструктори з аргументами. Тому вони не змогли призначити servletConfig. Однак сьогодні контейнери сервлетів все ще викликають лише конструктор без аргументів. Тому немає доступу до servletContext або servletConfig.


17) Поясніть методи життєвого циклу.

1) jsplnit(): Контейнер викликає це для ініціалізації екземпляра сервлета. Він викликається лише один раз для екземпляра сервлета та передує кожному іншому методу.

2) _jspService(): Контейнер викликає це для кожного запиту та передає його об’єктам.

3) jspDestroy(): викликається контейнером безпосередньо перед знищенням екземпляра.


18) Поясніть коментарі виводу JSP?

Це коментарі, які можна переглянути у вихідному файлі HTML.


19) Визначте вираз

Тег Expression використовується для вставки Java значення безпосередньо у вихідних даних. Його синтаксис такий

<%=expression%>

Він містить вираз мови сценаріїв, який обчислюється, потім перетворюється на рядок, а потім вставляється туди, куди входить вираз у файлі JSP.


20) Визначте склад.

Композиція має сильніший зв’язок з об’єктом, ніж агрегація.


21) Визначте сценарій JSP.

Це тег JSP, який охоплює Java код на сторінках JSP. Їх синтаксис: <% %>. Код, написаний у скриптлеті, виконується під час кожного запуску програми.


22) Як інформація з одного JSP може бути передана іншому JSP?

Тег дозволяє нам передавати інформацію між кількома Jsp.


23) Поясніть використання тег.

<jsp:useBean>

id="beanInstName"

scope= "page | application"

class="ABC.class"  type="ABC.class"

</jsp:useBean>

Цей тег створює екземпляр java bean. Спочатку він намагається знайти, чи вже існує екземпляр компонента, і призначити зберігає посилання в змінній. Також вказується тип; інакше він створює екземпляр із зазначеного класу, зберігаючи посилання в новій змінній.


24) Поясніть обробку винятків під час виконання.

Атрибут Errorpage використовується для перехоплення винятків під час виконання, які автоматично пересилаються на сторінку обробки помилок.

Він перенаправляє браузер на JSP-сторінку error.jsp, якщо під час обробки запиту виникає будь-яка неперехоплена виняткова ситуація. Це сторінка обробки помилок.


25) Чому _jspService() починається з '_', а інші методи життєвого циклу — ні?

Будь-який вміст, створений на сторінці jsp, потрапляє всередину методу _jspService() контейнером. Якщо це перевизначення, компілятор видає помилку, але інші 2 життєві цикли можна легко перевизначити. Отже, «_» показує, що ми не можемо перевизначити цей метод.


26) Поясніть різні значення області видимості для тег.

тег використовується для використання будь-якого об’єкта Java на сторінці jsp. Деякі значення області:

1) додаток

2) запит

3) сторінка

4) сесія


27) Показати 2 типи коментарів у JSP.

Це 2 типи:

<%–JSP Comment–%>
<!–HTML comment–>

28) Чи можна перевизначити статичний метод?

Ми можемо оголосити статичні методи з однаковою сигнатурою в підкласі, але це не вважається перевизначенням, оскільки не буде поліморфізму під час виконання. Тому відповідь «Ні».


29) Поясніть директиви JSP.

Директиви JSP це повідомлення для JSP Engine. Вони служать як повідомлення від сторінки до контейнера та контролюють обробку всієї сторінки. Вони можуть встановлювати глобальні значення, такі як оголошення класу. Вони не створюють результат і укладені в <%@….%>


30) Поясніть директиви сторінки.

Директиви сторінки інформують механізм JSP про заголовки та засоби, які сторінка отримує від середовища. Його можна знайти у верхній частині всіх сторінок JSP. Його синтаксис такий <%@ page attribute=”value”>


31) Показати атрибути директив сторінки.

  1. Сесія: Він показує, чи доступні дані сеансу для сторінки.
  2. Імпорт: він показує імпортовані пакунки.
  3. isELIgnored: Він показує, чи ігноруються вирази EL, коли JSP перетворюється на a сервлет.
  4. contentType: це дозволяє користувачеві вказати тип вмісту сторінки.

32) Що таке директива Include?

Директива include статично вставляє вміст ресурсу в поточний JSP. Це допомагає повторно використовувати код без дублювання. і включає вміст файлу під час перекладу. Його синтаксис такий <%@ include file=”Filename”%>.


33) Що таке стандартні дії в JSP?

Вони впливають на загальну поведінку сторінки під час виконання та відповідь, надіслану клієнту. Вони використовуються для включення файлу під час запиту, для створення екземпляра a JavaБін або знайдіть його. Вони також використовуються для створення коду браузера або пересилання запиту на нову сторінку.


34) Поясніть дію jsp:setProperty.

Він використовується для надання значень властивостям компонентів, на які були посилання раніше.


<jsp:setProperty name=”ABC” property=”myProperty”…

jsp:setproperty виконується, навіть якщо створено новий bean або знайдено існуючий bean.

Додаючи в кінці коду умова виконання інвертується, тобто вона не виконується, якщо знайдено існуючий об’єкт, а лише якщо створено новий об’єкт.


35) Визначте статичний блок.

Він використовується для запуску статичних даних. Він виконується перед завантаженням класу.


36) Поясніть дію jsp:plugin.

Ця дія допомагає вставити певний об’єкт у браузер або вставити елемент, необхідний для вказівки запуску аплету за допомогою Java плагін.


37) Поясніть перевірку на стороні клієнта та сервера.

Javascript використовується для перевірки на стороні клієнта. Це відбувається в браузері. Javascript використовується для надсилання даних форми, якщо перевірка пройшла успішно. Помилки підтвердження не вимагають додаткового підключення до мережі, оскільки форму неможливо надіслати.

Перевірка також виконується на сервері після надсилання. Якщо перевірка не вдається, для повторного надсилання форми клієнту потрібна додаткова мережева поїздка.


38) Що таке фаза перекладу?

Механізм JSP перекладає та компілює файл JSP у сервлет. Цей сервлет переходить до фази виконання, де обробляються запити та відповіді. Вони компілюються вперше, коли до них звертаються, якщо не скомпільовано вручну заздалегідь. Ручна або явна компіляція корисна для довгих і заплутаних програм.


39) Виконайте переспрямування браузера зі сторінки JSP.

<% response.sendRedirect(URL); %>

або ми можемо змінити розташування атрибута заголовка HTTP таким чином:

<% response.setStatus(HttpServletResponse.SC_MOVED_PERMANENTLY); response.setHeader(URL); %>

40) Наведіть використання клонування об’єктів.

Клонування об’єкта використовується для створення точної копії об’єкта шляхом введення того самого коду або використання різних інших методів.


41) Як переслати запит до іншого джерела.

<jsp:forward page="/Page2.jsp" />

42) Як можна запобігти автоматичному створенню сеансу на сторінці JSP?

Сторінка JSP автоматично створює сесії для запитів. Цього можна уникнути, ввівши наступне.

<%@ page session=”false”  %>

43) Як можна уникнути коду скриптлетів у JSP?

JavaЗамість коду сценарію можна використовувати beans або спеціальні теги.


44) Поясніть метод jspDestroy().

Кожного разу, коли сторінку JSP збираються знищити, контейнер викликає метод jspDestroy() з інтерфейсу javax.servlet.jsp.JspPage. Методи знищення сервлетів подібні до нього. Його можна легко змінити, щоб виконати очищення, наприклад, під час закриття з’єднання з базою даних.


45) Поясніть дію.

Це дія, яка використовується зі стандартними діями включення або пересилання. Це допомагає передавати назви та значення параметрів до ресурсу.


46) Поясніть статичний метод.

Статичний метод є класом, а не об’єктом класу. Його можна викликати без примірника класу. Статичні члени також можуть отримувати доступ до статичних даних і змінювати їх значення.


47) Як вимкнути сценарії?

Сценарій можна легко вимкнути, встановивши для елемента scripting-invalid дескриптора розгортання значення true. Це піделемент групи властивостей. Він також може бути хибним.


48) Визначте декларацію JSP.

Оголошення JSP — це теги, які використовуються для оголошення змінних. Вони укладені в тег <%!%>. Вони використовуються для оголошення функцій і змінних.

<%@page contentType=”text/html” %>

<html>
<body>
<%!
	int a=0;
	private int getCount(){
	a++;
return a;
}%>
<p>Values of a are:</p>
<p><%=getCount()%></p>
</body>
</html>

49) Як можна запобігти кешування вихідних даних HTML?

<%
response.setHeader("Cache-Control", "no=store");
response.setDateHeader("Expires", 0);
%>

50) Чим JSP кращий за технологію Servlet?

JSP — це технологія на стороні сервера, яка спрощує створення вмісту. Вони орієнтовані на документ, тоді як сервлети є програмами. А Java сторінка сервера може містити фрагменти Java програма, які виконуються та створюють екземпляри Java класи. Однак вони трапляються у файлі шаблону HTML. Він забезпечує основу для розробки веб-додатків.

Ці запитання для співбесіди також допоможуть вам у життєдіяльності (усному)