top 35 frequently asked struts interview questions answers
Цей підручник з питань інтерв’ю Struts з відповідями пояснює концепції Struts на простих прикладах:
Ця серія запитань про Struts проведе вас через повний огляд Struts Framework, потік програми, потребу в Struts, його дії, константи тощо, а також вхідні дані, які використовуються в Struts. Ця стаття висвітлить усі важливі питання, які задаються в будь-якому інтерв’ю Struts.
Ніхто не буде просити вас писати код за допомогою Strtus2, він буде кружляти навколо всіх теоретичних питань, а інтерв'юер просто хоче знати, чи має кандидат базові знання про те, як працює структура Struts, чи ні.
Після ретельного перегляду всіх цих питань, якщо ви можете пояснити ці поняття своїми словами на невеликих прикладах у реальному часі, ви вже закінчили.
Найчастіші запитання Struts Інтерв’ю з відповідями
Q # 1) Що таке Struts Framework? Які його компоненти?
Відповідь: Struts - це тип розробки веб-додатків, який забезпечує відповідну платформу для розробки веб-додатків. Struts включають сервлети, JSP, власні теги та ресурси повідомлення в єдину структуру.
Q # 2) Чому ми використовуємо Struts?
Відповідь: Оскільки Struts базується на архітектурі MVC, тобто Model, View, Controller, він розділяє Business Logic, Design & Controller, в результаті чого робить код більш простим, ремонтопридатним і читабельним.
Q # 3) Які важливі класи програми Struts?
Відповідь: Нижче перераховані найважливіші класи програми Struts.
- Сервлет Action: Це клас контролера і обробляє всі вхідні запити.
- Клас дій: У класі Action розроблена вся бізнес-логіка, так звана Модель.
- Форма дії : Action Action - це Java-компонент, який асоціює одне або кілька зіставлення дій. Він підтримує стан сеансу для веб-програми.
- Картування дій: За допомогою зіставлення дій ми можемо зробити відображення між об’єктом та дією.
- Дія вперед: Він використовується для пересилання результату від контролера до місця призначення.
Q # 4) Які нові функції Struts2?
Відповідь: Видатні особливості Struts2 такі.
- У Struts2 клас Action - POJO. Нам не потрібно успадковувати будь-який клас або реалізовувати будь-який інтерфейс.
- Struts2 має JSP, Free marker і Valocity для компонента view.
- У Struts2 фронтальним контролером є StrutsPrepareAndExecuteFilter.
- У Struts2 ім'я файлу конфігурації має бути struts.xml і повинно бути розміщене всередині каталогу класів.
- Struts2 використовує концепцію перехоплювачів під час обробки запиту.
Q # 5) Що таке MVC?
основні запитання та відповіді на інтерв’ю для SQL pdf
Відповідь: MVC розшифровується як Model, View та Controller і називається Software Design Pattern для розробки веб-додатків.
Модель: Модель відповідає за підтримку стану даних та ділової логіки програми.
Вид: View відповідає за те, щоб показати всі дані для використання, тобто він показує презентацію.
Контролер: Контролер діє як інтерфейс між видом і моделлю. Він перехоплює всі запити, тобто отримує вхідні дані та команди в Модель / Вид для відповідного зміни.

Q # 6) Що таке перехоплювачі?
Відповідь: Перехоплювачі - це об'єкт, який забезпечує логіку попередньої обробки до виклику дії або забезпечує логіку післяобробки після виклику дії. Перехоплювачі можна використовувати для виконання різних операцій, таких як перевірка, обробка винятків, завантаження файлів, відображення проміжних результатів тощо.
Q # 7) Які існують методи життєвого циклу перехоплювача?
Відповідь: Існує три методи життєвого циклу перехоплювача, як зазначено нижче.
- метод init ()
- метод intercept ()
- метод знищення ()
Q # 8) Як обробляється запит у додатку Struts2?
Відповідь: Запит у додатку Struts2 обробляється нижче.
- По-перше, отриманий запит надсилається на сервер користувачем.
- Потім запит обробляється FilterDispatcher, який вибирає для нього відповідну дію.
- Визначені перехоплювачі виконують операції попередньої обробки, такі як завантаження файлів, обробка винятків тощо.
- Тепер обрана дія виконується і операція виконується.
- Знову визначені перехоплювачі виконують операції післяобробки, такі як завантаження файлів, обробка винятків тощо.
- Остаточний результат відображається користувачеві у вигляді сторінки перегляду.
Q # 9) Яка функція файлу Struts.xml у Struts?
Відповідь: У файлі struts.xml користувач може визначити всі зіставлення з діями, щоб певна дія викликалася, коли виконується певна операція. Він також називається файлом конфігурації і присутній у папці WEB-INF / classes.
Q # 10) Які файли конфігурацій використовуються у Struts?
Відповідь: Файли конфігурацій, які використовуються у Struts, включають:
- ApplicationResource.properties.
- Struts-config.xml.
Q # 11) Яке використання методів Validate () та Reset () у Struts?
Відповідь:
Перевірити () метод використовується для перевірки властивостей після того, як вони були заповнені, і він викликається перед передачею Bean форми у дію. Він повертає набір помилок дії.
Синтаксис: Відкриті перевірки помилок Action (відображення ActionMapping, запит HttpServletRequest)
Скинути () метод використовується для скидання всіх даних ActionForm до встановлення нових значень. Він викликається структурою struts з кожним запитом, який використовує визначену форму дії.
Синтаксис: загальнодоступне скидання порожнечі ((зіставлення ActionMapping, запит HttpServletRequest)
Q # 12) Що ви маєте на увазі під Value Stack?
Відповідь: Стек значень можна пояснити як стек, що містить об'єкти, що відповідають вимогам. Дія залишається у верхній частині стека під час виконання.
Потім об’єкти поміщаються в стек значень, і користувач може виконувати над ними операції SQL.
Різні методи стека значень такі:
- FindString (): Використовується для пошуку рядка з поданого виразу.
- FindValue (): Використовується для пошуку значення з поданого виразу.
- Заглянути (): Це дає об'єкт, розташований у верхній частині стека.
- Поп (): Він видає об'єкт, розташований у верхній частині стека, і видаляє його.
- Натисніть (): Він штовхає предмет до верхньої частини стека.
Q # 13) Що ви маєте на увазі під контекстом дії?
Відповідь: Контекст дії - це контейнер об’єктів, в якому виконуються дії. Значення, які зберігаються в контексті дії, унікальні для кожного потоку (тобто локальна нитка), внаслідок чого нам не потрібно робити нашу дію безпечною для потоків.
Викликаючи метод getContext () класу ActionContext, ми можемо отримати посилання на ActionContext. Це статичний заводський метод.
Наприклад: ActionContext context = ActionContext.getContext ();
Q # 14) Яка користь ActionInvocation?
Відповідь: ActionInvocation використовується для представлення стану виконання дії. Він утримує дію та об'єкт-перехоплювач.
Q # 15) Яка користь від OGNL?
Відповідь: Мова навігації графіком об'єктів (OGNL) - це сильна мова виразів. Це допомагає спростити доступ до даних, що зберігаються в ActionContext. OGNL підтримує взаємодію з колекціями, тобто Map, List та Set.
Структура struts допомагає встановити ValueStack як кореневий об'єкт OGNL. Об'єкт дії переміщено в ValueStack, і ми можемо отримати безпосередній доступ до властивості action.
Q # 16) Які типи констант присутні в інтерфейсі дії?
Відповідь: Існує п’ять типів констант, що надаються інтерфейсом дії.
Вони є:
- Увійти
- Вхідні дані
- Успіху
- Помилка
- Жоден
Q # 17) Як ми можемо створити класи дій у Struts2?
Відповідь: Існує багато способів створити класи дій у Struts2.
Деякі з них такі:
- Використання анотації Strts2 @Action.
- Розширення класу ActionSupport.
- Реалізуючи інтерфейс дії.
- Будь-який клас Java, що складається з повертається значення execute (), може бути налаштований як клас дії.
Q # 18) Як ми можемо обробляти винятки в Struts?
Відповідь: У Struts винятки можна обробляти двома способами, як показано нижче.
- Обробка програмних винятків: У цьому випадку ми можемо використовувати блок Try {} Catch {} для обробки винятків.
- Декларативні обробки винятків: Тут ми можемо визначити глобальні теги обробки винятків у struts-config.xml або визначити теги обробки винятків усередині тегів.
Q # 19) Які типи бібліотек тегів у Struts?
Відповідь: Struts надає безліч бібліотек тегів для полегшення розробки програмного забезпечення.
Вони є:
- Бібліотека тегів квасолі: Використовується для доступу до Java Beans та його властивостей.
- Бібліотека вкладених тегів: Надає можливість використовувати вкладені компоненти в програмі.
- Бібліотека тегів логіки: Використовується для надання необхідного виходу, можливості ітерації та управління потоком.
- Бібліотека тегів HTML: Допомагає отримати необхідний вихідний файл HTML.
- Бібліотека тегів плитки: Використовується в додатках, які мають плитку.
Q # 20) Які різні типи дій Struts?
Відповідь: Існує 5 типів дій Struts.
Вони такі:
приватні сервери для world of warcraft
- Дія вперед: За допомогою цього класу ми можемо керувати контролером Struts та його функціональністю, не переписуючи існуючі сервлети.
- Включити дію: Використання класу IncludeAction для включення іншого ресурсу у відповідь на оброблюваний запит.
- Дія перемикання: Використовується для перемикання одного ресурсу в одному модулі на інший ресурс в іншому модулі.
- Дія відправлення: Використовується для об’єднання пов’язаних дій в єдиний клас.
- LookUpAction: Використовується для керування дією за допомогою ключа, якщо назва дії не працює.
Q # 21) Які існують різні типи тегів у Struts2?
Відповідь: Різні типи тегів у Struts2 такі:
- Тег управління (Якщо інший тег, тег ітератора, тег злиття, додавання тегу, тег генератора тощо)
- Тег даних (Тег дії, Включити тег, Тег Bean, Тег дати, Тег Param, Тег властивостей, Push Tag, Встановити тег, Текстовий тег тощо)
- День фігури (Усі прості теги інтерфейсу користувача.)
- День Аякса
Q # 22) Який тип результатів за замовчуванням у Struts2?
Відповідь: Типом результату за замовчуванням у struts2 є диспетчер. Він використовується для відправки сторінок JSP.
Q # 23) Що ви маєте на увазі під інтернаціоналізацією? Навіщо нам це потрібно?
Відповідь: Інтернаціоналізація (i18n) - це перехоплювач, який використовується для планування та впровадження продуктів та послуг, щоб їх можна було легко адаптувати до конкретних місцевих мов та культур, тобто процесу, який називається локалізацією.
Він обробляє налаштування локалі для дії. Він може бути використаний, якщо користувач хоче встановити свою локаль та отримати дані відповідно до вказаної локалі.
Q # 24) Які основні компоненти Struts2?
Відповідь: Основними компонентами Struts2 є такі:
- Перехоплювачі
- Стек цінностей
- Контекст дії
- OGNL
- ActionInvocation
Q # 25) Як ми можемо створити власний перехоплювач?
Відповідь: Ми можемо створити власний перехоплювач, реалізувавши інтерфейс перехоплювача в класі і замінивши його метод трьох життєвих циклів, тобто init (), Destroy (), Intercept () . Його також можна створити, визначивши запис перехоплювача у файлі struts.xml.
Q # 26) Яка функціональність Token Interceptor у Struts2?
Відповідь: Основною проблемою веб-додатків є надсилання подвійної форми, що призводить до стягнення з користувача подвійних сум та збереження подвійних значень у базі даних. Ми можемо використовувати перехоплювач символів, щоб вирішити проблему подання подвійної форми. Цей перехоплювач визначений у пакунку struts-default.
Unix - це те саме, що і Linux
Q # 27) Як завантажувати файли в програму Struts2?
Відповідь: За допомогою FileUploadInterceptor ми можемо завантажувати файли в програму struts2.
Q # 28) Чи синхронізована дія Struts2?
Відповідь: Так, дії Struts2 синхронізуються під час виклику об’єкта для обробки будь-якого нового вхідного запиту.
Q # 29) Чи синхронізовані перехоплювачі Struts2?
Відповідь: Оскільки перехоплювачі Struts2 - це однокласні класи, і оскільки новий потік створюється для обробки запиту, він не синхронізується, і нам потрібно ретельно їх реалізовувати, щоб уникнути будь-яких проблем із спільними даними.
Q # 30) Що таке фронтальний контролер у Struts2?
Відповідь: StrutsPrepareAndExecuteFilter - це клас переднього контролера в Struts2, він також є початковою точкою кожного вхідного запиту.
Q # 31) Як ValueStack та OGNL пов’язані?
Відповідь: OGNL - це бібліотека, за допомогою якої маніпулюють даними або значеннями ValueStack, тоді як ValueStack - це стек, де зберігаються всі значення та дані, пов’язані з діями.
Q # 32) Написати синтаксис для відображення вихідної сторінки за допомогою XML у Struts2?
Відповідь: Тут у Struts2 користувач може оголосити XML-файл, як показано нижче:
output.jsp error.jsp
Q # 33) За яким зразком дизайну слідують перехоплювачі?
Відповідь: Перехоплювачі дотримуються шаблону проектування на основі перехоплюючих фільтрів.
Q # 34) Де знаходиться тег Plug-in у Struts2? Яка функція тегу Plug-in?
Відповідь: Тег плагіна знаходиться в struct-config.xml і використовується для того, щоб повідомляти користувачеві, де знайдений файл властивостей, що містить усі повідомлення про запити та помилки.
Q # 35) Які недоліки Struts Framework?
Відповідь: Деякі недоліки Struts Framework:
- Використовується лише один контролер сервлета.
- Немає належної документації.
- Прозорість не є повною.
- Підхід є негнучким.
- Багато чого можна навчитися.
Висновок
Ми багато чого дізналися про Struts Framework з цієї інформативної статті. Ми побачили, що таке Struts Framework? Потік Struts Framework, потреба в Struts, переваги Struts перед іншими фреймворками, архітектура та компоненти Struts, класи та файли конфігурації.
Ми також дослідили концепцію перехоплювачів, контекст дії, OGNL, виклик дії, методи життєвого циклу, різні типи тегів, обробку винятків у Struts тощо.
Сподіваюся, ця стаття допомогла вам легко зрозуміти концепції Struts. Ви можете впевнено відповісти на запитання про Struts за допомогою цієї інформативної статті.
Рекомендована література
- 20 Вибіркових запитань щодо інтерв’ю з якості для очищення інтерв’ю у 2021 році
- 25 найкращих запитань та відповідей на інтерв’ю для спритного тестування
- 25+ Найпопулярніші запитання та відповіді на інтерв’ю ADO.NET
- 25+ найкращих весняних запитань та відповідей на MVC
- 30 найважливіших запитань та відповідей на інтерв’ю PL / SQL у 2021 році
- 30 найпопулярніших запитань та відповідей на інтерв’ю в HTML (СПИСОК 2021)
- 30+ найкращих запитань та відповідей на інтерв’ю у Scrum (СПИСОК 2021)
- 31 Найпопулярніші запитання та відповіді на тестування бази даних
- 48 найпопулярніших запитань та відповідей на інтерв’ю AngularJS (2021 СПИСОК)