50 найкращих запитань щодо інтерв’ю JSP & Відповіді

Anonim

Завантажте PDF

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

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

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

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

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

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

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

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

  • відповідь
  • виняток
  • застосування
  • запит
  • сесія
  • сторінки
  • назовні
  • конфігурація
  • pageContext

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

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

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

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

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

6) Чи розширювана технологія JSP?

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

7) Диференціювати response.sendRedirect (url) та

…>.

Елемент пересилає об'єкт запиту з 1 файлу JSP в інший. Цільовим файлом може бути HTML, сервлет або інший файл JSP, але він повинен знаходитися в тому ж контексті програми, що і файл JSP для пересилання.

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

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

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

JSP - це компонент на стороні сервера, а сторінка перекладається в сервлет Java, а потім виконується. У якості вихідних даних подається лише HTML-код.

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

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

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

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

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:” та назви дії.

15) Розрізняти та <% @ include file = ...>.

Обидва ці теги включають інформацію з 1 сторінки на іншу.

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

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

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

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

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

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

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

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

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

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

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

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

<% = вираз%>

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

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

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

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

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

22) Як можна передавати інформацію від одного JSP до іншого JSP?

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

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

id="beanInstName"scope= "page | application"class="ABC.class" type="ABC.class"

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

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

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

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

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

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

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

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

1) заявка

2) запит

3) сторінка

4) сесія

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

Це два типи:

<%-JSP Comment-%>

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

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

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

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

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

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

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

1) Сесія: показує, чи доступні дані сеансу на сторінці.

2) Імпорт: він показує пакунки, які імпортуються.

3) isELIgnored: показує, чи ігноруються вирази EL, коли JSP перетворюється на сервлет.

4) contentType: дозволяє користувачеві вказати тип вмісту сторінки.

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

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

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

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

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

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

...

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

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

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

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

36) Поясніть jsp: дія плагіна.

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

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

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

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

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

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

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

<% response.sendRedirect(URL); %>

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

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

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

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

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

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

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

<%@ page session=”false” %>

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

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

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

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

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

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

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

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

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

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

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

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

<%@page contentType=”text/html” %><%!int a=0;private int getCount(){a++;return a;}%>

Values of a are:

<%=getCount()%>

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

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

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

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