50 найкращих питань на співбесіді J2EE (2025)
Запитання та відповіді на інтерв’ю J2EE
Ось питання та відповіді на співбесіді J2EE для новачків, а також для досвідчених кандидатів, щоб отримати роботу своєї мрії.
1) Що таке J2EE?
J2EE означає Java 2 Enterprise Edition. Функціональність J2EE полягає в розробці багаторівневих веб-додатків. Платформа J2EE складається з набору служб, інтерфейсів прикладного програмування (API) і протоколів.
Безкоштовне завантаження PDF: J2EE Interview Questions and Answers
2) З яких чотирьох компонентів складається програма J2EE?
- Клієнтські компоненти програми.
- Сервлет і технологія JSP є веб-компонентами.
- Бізнес-компоненти (JavaBeans).
- Компоненти адаптера ресурсу
3) Які існують типи клієнтів J2EE?
- Аплети
- Клієнти програми
- Клієнти з підтримкою Java Web Start за технологією Java Web Start.
- Бездротові клієнти, засновані на технології MIDP.
4) Що вважається веб-компонентом?
Технологічні компоненти Java Servlet і Java Server Pages є веб-компонентами. Сервлети — це мова програмування Java, яка динамічно отримує запити та надсилає відповіді. Сторінки JSP виконуються як сервлети, але дозволяють більш природний підхід до створення статичного вмісту.
5) Що таке JSF?
JavaServer Faces (JSF) це інтерфейс користувача (UI) розробка фреймворку для веб-додатків Java. JSF надає набір повторно використовуваних компонентів інтерфейсу користувача, стандарт для веб-додатків. JSF базується на шаблоні проектування MVC. Він автоматично зберігає дані форми на сервері та заповнює дату форми під час відображення на стороні клієнта.
6) Визначити хеш-таблицю
HashTable схожий на Hash Map, колекція має ключ (унікальний), пари значень. Hashtable — це колекція синхронізованих об’єктів. Він не допускає повторюваних значень або нульових значень.
7) Що таке Hibernate?
замовити це служба об’єктно-реляційного відображення та запитів з відкритим кодом. У сплячому режимі ми можемо писати замість HQL SQL що дозволяє розробникам витрачати більше часу на написання рідного SQL.
Hibernate має потужніші асоціації, успадкування, поліморфізм, композицію та колекції. Це прекрасний підхід для збереження в базі даних за допомогою об’єктів Java. Hibernate також дозволяє виражати запити за допомогою критеріїв на основі Java.
8) Які обмеження сплячого режиму?
- Запити виконуються повільніше, ніж запити, які використовуються безпосередньо.
- Підтримка лише мови запитів для складених ключів.
- Немає спільних посилань на типи значень.
9) Які переваги гібернації?
- Hibernate є портативним, я маю на увазі незалежність від бази даних, незалежність від постачальника.
- Стандартний ORM також підтримує JPA
- Відображення об'єкта домену в реляційну базу даних.
- Hibernate краще, ніж простий JDBC.
- Провайдер JPA у програмах на основі JPA.
10) Що таке ORM?
ORM означає об’єктно-реляційне відображення. Об’єкти в класі Java, які відображаються в таблицях реляційної бази даних за допомогою метаданих, які описують відображення між об’єктами та базою даних. Він працює шляхом перетворення даних з одного представлення в інше.
11) Різниця між збереженням і збереженням оновлення
- зберегти () – Цей метод у Hibernate використовується для збереження об’єкта в базі даних. Він вставляє запис, якщо запис не існує, інакше ні.
- saveorupdate () -Цей метод у сплячому режимі використовується для оновлення об’єкта за допомогою ідентифікатора. Якщо ідентифікатор відсутній, цей метод викликає save(). Якщо ідентифікатор існує, він викличе метод оновлення.
12) Різниця між методом завантаження та отримання?
- загрузка() не може знайти об’єкт у кеші чи базі даних, створюється виняток, а метод load() ніколи не повертає значення null.
- отримати() метод повертає значення null, якщо об’єкт неможливо знайти. Метод load() може повертати проксі замість справжнього постійного екземпляра get() ніколи не повертає проксі.
13) Як викликати збережену процедуру в сплячому режимі?
{ ? = call thisISTheProcedure() }
14) Які переваги ORM?
- Продуктивність
- Підтримка
- продуктивність
- Незалежність постачальника
15) Які основні інтерфейси фреймворку Hibernate?
- Інтерфейс сесії
- Інтерфейс SessionFactory
- Інтерфейс налаштування
- Інтерфейс транзакцій
- Інтерфейс запитів і критеріїв
16) Яке розширення файлу використовується для файлу відображення сплячого режиму?
Ім'я файлу має бути таким: filename.hbm.XML
17) Як називається файл конфігурації сплячого режиму?
Назва файлу має бути такою: hibernate.cfg.xml
18) Поясніть, як Hibernate не залежить від бази даних?
Лише зміна повної властивості повну базу даних можна замінити.
<property name="hibernate.dialect">org.hibernate.dialect.Oracle9Dialect</property> and <property name="hibernate.connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
19) Як додати файл зіставлення Hibernate у файл конфігурації Hibernate?
за
20) Визначити пул з’єднань?
Пул з'єднань — це механізм повторного використання з'єднання, яке містить кількість уже створених об'єктних з'єднань. Отже, коли це необхідно для об’єкта, цей механізм використовується для отримання об’єктів без їх створення.
21) Що таке проксі-сервер Hibernate?
Проксі-сервер об’єкта — це лише спосіб уникнути отримання об’єкта, доки він вам не знадобиться. Hibernate 2 за замовчуванням не проксі об’єктів.
22) Що ви створюєте SessionFactory?
Configuration cfg = new Configuration(); cfg.addResource("dir/hibernate.hbm.xml"); cfg.setProperties( System.getProperties() ); SessionFactory sessions = cfg.buildSessionFactory();
23) Що таке HQL?
HQL означає Hibernate Query Language. Hibernate дозволяє користувачеві виражати запити у своєму портативному розширенні SQL, і це називається HQL. Це також дозволяє користувачеві виражати в рідному SQL.
24) Які типи колекцій існують у Hibernate?
Набір, список, масив, Карта, Сумка є типом колекції в Hibernate.
25) Що таке тонкий клієнт?
Тонкий клієнт — це програмний інтерфейс до програми, який не виконує жодних операцій, як-от запит до баз даних, виконання складних бізнес-правил або підключення до застарілих програм.
26) Розрізняйте файли .ear, .jar і .war.
файли .jar: Ці файли мають розширення .jar. Файли .jar містять файли бібліотек, ресурсів і аксесуарів, наприклад файли властивостей.
Файли .war: Ці файли мають розширення .war. Файл .war містить JSP, HTML, javascript та інші файли, необхідні для розробки веб-додатків.
Файли .ear: Файл .ear містить модулі EJB програми.
27) Що таке тег JSP?
У JSP теги можна розділити на чотири різні типи.
- інструкції
- Декларації
- скриптети
- Вирази
28) Як отримати доступ до параметрів ініціалізації web.xml зі сторінки JSP?
Наприклад, якщо у вас є:
ID це цінність
Ви можете отримати доступ до цього параметра
Id: <h:outputText value="#{initParam['Id']}"/>
29) Що таке директиви JSP?
- 1.page Директиви <%@page language=”java” %>
- 2. директиви include: <%@ include file=”/header.jsp” %>
- 3. Директиви taglib <%@ taglib uri=”tlds/taglib.tld” prefix=”html” %>
30) Що таке файл EAR?
Файл EAR – це файл JAR із розширенням .ear. Програма J2EE з усіма її модулями поставляється у файлі EAR.
31) Що станеться, коли ви скомпілюєте та запустите наступний код?
public class MyClass { public static void main(String argv[]){ int array[]=new int[]{1,2,3}; System.out.println(array [1]); } } Answer: Compiled and shows output : 2
32) Що таке Struts?
Структура Struts — це архітектура Model-View-Controller (MVC) для розробки великомасштабних програм. Це комбінація Java Servlets, JSP, Custom тегів і повідомлення. Struts допоможе вам створити розширюване середовище розробки для вашої програми на основі опублікованих стандартів і перевірених шаблонів проектування. Модель у багатьох програмах представляє внутрішній стан системи як набір одного або кількох JavaBeans.The вид найчастіше створюється за допомогою технології JavaServer Pages (JSP). Контролер зосереджений на отриманні запитів від клієнта та створенні наступної фази інтерфейсу користувача для відповідного компонента View. Основним компонентом контролера в рамках є сервлет класу ActionServlet.
Цей сервлет налаштовується шляхом визначення набору ActionMappings.
33) Що таке ActionErrors?
Об’єкт ActionErrors, який інкапсулює будь-які знайдені помилки перевірки. Якщо помилок не знайдено, поверніть значення null або об’єкт ActionErrors без записаних повідомлень про помилки. Реалізація за замовчуванням намагається переслати до HTTP-версії цього методу. Зберігання відображення параметрів запиту та запит і повернення набору помилок перевірки, якщо перевірка не вдається; порожній набір або нуль
34) Що таке ActionForm?
ActionForm — це Java-компонент, який пов’язує одне або більше ActionMappings. Компонент Java стає FormBean, якщо розширити клас org.apache.struts.action.ActionForm. Об’єкт ActionForm автоматично заповнюється на стороні сервера, дані якого були введені клієнтом з інтерфейсу користувача. ActionForm підтримує стан сеансу для веб-програми.
35) Що таке відображення дій??
У відображенні дій ми вказуємо клас дій для певної URL-адреси, тобто шлях і інше цільове подання, тобто пересилання, на яке буде перенаправлена відповідь на запит. ActionMapping представляє інформацію, яку ActionServlet знає про відображення конкретного запиту в екземпляр певного дію клас. відображення передається до виконувати () метод дію класу, що забезпечує прямий доступ до цієї інформації.
36) Що таке MVC на стійках?
MVC стенди Model-View-Controller.
Модель: Модель у багатьох програмах представляє внутрішній стан системи як набір одного або кількох JavaBeans.
вид: вид найчастіше створюється за допомогою технології JavaServer Pages (JSP).
контролер: Контролер зосереджений на отриманні запитів від клієнта та створенні наступної фази інтерфейсу користувача для відповідного компонента View. Основним компонентом контролера в рамках є сервлет класу ActionServlet.
Цей сервлет налаштовується шляхом визначення набору ActionMappings.
37) Які різні модулі навесні?
Навесні є сім основних модулів
- Модуль контейнера Core
- Модуль зіставлення O/R (об'єктний/реляційний)
- Модуль DAO
- Модуль контексту програми
- Аспектно -орієнтоване програмування
- Веб-модуль
- Модуль MVC
38) Що таке Bean Factory, чи використовували ви XMLBean factory?
XmlBeanFactory is one of the implementation of bean Factory org.springframework.beans.factory.xml.XmlBeanFactory is used to creat bean instance defined in our xml file. BeanFactory factory = new XmlBeanFactory(new FileInputStream("beans.xml")); Or ClassPathResource resorce = new ClassPathResource("beans.xml"); XmlBeanFactory factory = new XmlBeanFactory(resorce);
39) Що таке весна?
Spring — це легкий фреймворк із відкритим кодом для розробки корпоративних додатків, який вирішує складність розробки корпоративних додатків, а також забезпечує цілісну структуру для розробки додатків J2EE, яка в основному базується на шаблоні проектування IOC (інверсія управління) або DI (впровадження залежностей). .
40) Які функції мають ActionServlet і RequestProcessor?
- Отримання HttpServletRequest
- Заповнення JavaBean із параметрів запиту
- Відображення відповіді на веб-сторінці Проблеми
- Вирішення проблем типу вмісту
- Надайте точки розширення
41) Класи ActionServlet, RequestProcessor і Action є компонентами
контролер
42) Яка область за замовчуванням у Spring?
Синглтон.
43) Які переваги використання Spring?
- Програмування на основі Pojo дозволяє повторно використовувати компонент.
- Підвищення продуктивності та зменшення вартості розробки.
- Ін'єкцію залежностей можна використовувати для покращення тестування.
- Весна потребувала корпоративних послуг без дорогого сервера додатків.
- Це зменшує зчеплення в коді та покращує ремонтопридатність.
44) Які переваги Spring Framework?
- Легкий контейнер
- Spring може ефективно організувати ваші об'єкти середнього ярусу
- Ініціалізація властивостей проста. Немає необхідності читати з файлу властивостей
- модульне тестування коду програми набагато легше
- Об’єкти створюються Lazily, Singleton – конфігурація
- Сервіси керування конфігурацією Spring можна використовувати на будь-якому рівні архітектури в будь-якому середовищі виконання
45) Інтерфейси життєвого циклу навесні?
1) InitializingBean <bean id="expInitBean" init-method="init"/> public class ExpBean { public void init() { // do some initialization code } } OR <bean id=" expInitBean "/> public class ExpBean implements InitializingBean { public void afterPropertiesSet() { // do some initialization code } } 2) DisposableBean <bean id="expInitBean" destroy-method="cleanup"/> public class ExpBean { public void cleanup() { // do some destruction code (like releasing pooled connections) } } OR <bean id="expInitBean"/> public class ExpBean implements DisposableBean { public void destroy() { // do some destruction code (like releasing pooled connections) } }
46) Як створити об’єкт без використання ключового слова “новий” у java?
Без нових методи Factory використовуються для створення об’єктів для класу. Наприклад
Календар c=Calender.getInstance();
Тут Calender — це клас, а метод getInstance() — метод Factory, який може створити об’єкт для класу Calendar.
47) Що таке сервлет?
Сервлети — це компонент на стороні сервера, який забезпечує потужний механізм для розробки програм на стороні сервера. Сервлети - це сервери, а також незалежні від платформи і сервлети, призначені для різних протоколів. Найбільш часто використовувані протоколи HTTP. Сервлети використовують класи в пакетах Java javax.servlet, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, javax.servlet.http.HttpSession;. Усі сервлети повинні реалізовувати інтерфейс Servlet, який визначає методи життєвого циклу.
48) Сервлет – це чистий об’єкт Java чи ні?
Так, чистий об’єкт Java.
49) Які фази життєвого циклу сервлета?
Життєвий цикл сервлета складається з наступних фаз:
- Завантаження класу сервлету
- Створення екземпляра сервлету
- метод init
- Обробка запитів (виклик сервісного методу)
- Видалення з обслуговування (виклик методу знищення)
50) Що має бути реалізовано всіма сервлетами?
Інтерфейс сервлетів повинен бути реалізований усіма сервлетами
Ці запитання для співбесіди також допоможуть вам у життєдіяльності (усному)
6) Визначити хеш-таблицю
HashTable схожий на хеш-карту, колекцію, яка має пари ключів (унікальних), значень. Hashtable — це колекція синхронізованих об’єктів. Вона не допускає повторюваних значень, «але допускає нульові значення».
Заява про те, що вона допускає нульові значення, є неправильною, хеш-таблиця не містить ні нульових ключів, ні нульових значень.
Помилка виправлена
Дякую…
Це не зовсім J2EE Qns. Вони як би змішані з більшим акцентом на технологіях Spring & Hibernate. Можливо, ви можете перейменувати назву або додати більше JEE Qns.
Це корисний посібник