Введение в Spring Framework Интервью Вопросы и ответы

Spring Framework - одна из наиболее широко используемых фреймворков Java. Основными идеями Spring Framework являются «Внедрение зависимостей» и «Аспектно-ориентированное программирование». Платформа Spring часто используется в традиционных Java-приложениях дополнительно для достижения слабой связи между совершенно разными элементами путем внедрения внедрения зависимостей, и мы будем выполнять сквозные задачи, такие как работа, и использование поддержки Spring для аспектно-ориентированного программирования. Поскольку это фреймворк с открытым исходным кодом, с большим количеством онлайн-ресурсов и активных членов сообщества, он делает его простым и увлекательным одновременно.

Вот полный список вопросов и ответов по рамочным собеседованиям на 2019 год:

Теперь, если вы ищете работу, связанную с Spring Framework, то вам нужно подготовиться к интервью 2019 Spring Framework. Это правда, что каждое собеседование отличается в зависимости от профилей работы, но для прояснения собеседования вам необходимо иметь хорошее и четкое знание Spring Framework. Здесь мы подготовили важные вопросы и ответы на интервью Spring Framework, которые помогут вам добиться успеха в вашем интервью. Этот список вопросов разделен на две части:

  • Часть 1 - Весенние рамки Интервью Вопросы (Базовый)
  • Часть 2 - Spring Framework Вопросы для интервью (Advanced)

Часть 1 - Весенние рамки Интервью Вопросы (Базовый)

Эта первая часть охватывает базовую среду Spring. Интервью Вопросы и ответы

Q1. Каковы некоторые важные функции и преимущества Spring Framework?

Ответ:
Spring Framework построен на основе двух идей стиля - внедрение зависимостей и Аспектно-ориентированное программирование.
Некоторые из преимуществ использования Spring Framework:

  • Сокращая прямые зависимости между совершенно разными элементами устройства, обычно инструментальные средства Spring IoC отвечают за инициализацию ресурсов или компонентов и внедрение их в качестве зависимостей.
  • Написание модульных кейсов в Spring Framework не вызывает затруднений, поскольку наша бизнес-логика не имеет прямой зависимости от реальных категорий реализации ресурсов. мы можем просто написать обзор конфигурации и внедрить наши фиктивные компоненты для тестирования функций.
  • Уменьшает количество кода котельной пластины, например, при инициализации объектов, открытии / закрытии ресурсов. Я предпочитаю кучу категорий JdbcTemplate, потому что она помогает нам удалить весь стандартный код, который поставляется с программированием JDBC.
  • Платформа Spring разбита на множество модулей, что помогает нам поддерживать наше приложение легким.
  • Spring Framework поддерживает большинство параметров Java EE и даже больше. Это постоянно совершенствуется в новых технологиях, например, есть проект Spring для Android, который помогает нам писать более высокий код для нативных приложений Android. Это делает каркас пружины целым пакетом, и мы не должны быть вынуждены заботиться о совершенно разных каркасах для различных нужд.

Q2.Что вы понимаете под инъекцией зависимостей?

Ответ:
Шаблон стиля Dependency Injection позволяет нам избавиться от жестко запрограммированных зависимостей и создать наше приложение слабо связанным, расширяемым и восстанавливаемым. мы можем реализовать шаблон внедрения зависимостей, чтобы переместить разрешение зависимостей из времени компиляции во время выполнения.
Некоторые из преимуществ использования Dependency Injection - это разделение проблем, сокращение кода Boilerplate, настраиваемые элементы и простое модульное тестирование.

Давайте перейдем к следующим весенним рамкам Интервью Вопросы.

Q3.Каковы преимущества использования Spring Tool Suite?

Ответ:
Мы можем установить плагины в Eclipse, чтобы использовать все опции Spring Tool Suite. Он поставляется с необходимыми вещами, такими как адепт, поддержка шаблонов для создания различных видов Spring и более высокая производительность с приложениями Spring.
Мне нравится STS, потому что он выделяет элементы Spring, и если вы используете точечные вызовы и рекомендации AOP, то это ясно показывает, что пути могут возвращаться ниже точного точечного. поэтому вместо того, чтобы вкладывать все самостоятельно, мне нравится использовать STS, когда-то разрабатывал приложения, основанные на Spring.

Q4.Name некоторые из важных модулей Spring?

Ответ:
Это общие рамки интервью Spring. Вопросы, задаваемые в интервью. Некоторые из необходимых модулей Spring Framework:

  • Spring Context - для внедрения зависимостей.
  • Spring AOP - для аспектно-ориентированного программирования.
  • Spring DAO - для информационных операций с использованием шаблона DAO
  • Spring JDBC - для поддержки JDBC и DataSource.
  • Spring ORM - для поддержки инструментов ORM, таких как Hibernate
  • Spring net Module - для создания сетевых приложений.
  • Spring MVC - реализация Model-View-Controller для создания сетевых приложений, сетевых сервисов и т. Д.

Q5.Что такое Аспект, Советы, Pointcut, JointPoint и Советы в AOP?

Ответ:

Аспект : Аспект - это категория, которая реализует сквозные вопросы, такие как управление групповыми действиями. Аспекты часто являются стандартной категорией, организованной, а затем организованной в файле конфигурации Spring Bean, или мы можем использовать поддержку Spring AspectJ для объявления категории как аспекта с помощью аннотации @Aspect.

Совет : рекомендация заключается в том, что действие было предпринято для конкретной цели. С точки зрения программирования, это способы, которые умирают, как только конкретная часть становится частью цели, когда в приложении достигается совпадение точек.

Pointcut : Pointcut - это регулярные выражения, которые сопоставляются с частью точек, чтобы определить, должна ли рекомендация быть мертвой или нет. Pointcut использует совершенно разные формы выражений, которые сопоставляются с частью точек. Платформа Spring использует язык выражений AspectJ pointcut для того, чтобы стать частью точек, где применяются рекомендации.

Точка соединения: быть частью цели заключается в том, что конкретная цель приложения, такая как выполнение метода, обработка исключений, постоянно меняющиеся значения переменных объекта и т. Д. В Spring AOP часто быть частью точек является выполнением метода.

Аргументы совета: мы можем передавать аргументы в соответствии с рекомендациями. мы можем использовать выражение args () внутри pointcut для применения к любой технике, которая соответствует шаблону аргумента. Если мы склонны использовать это, то мы хотим использовать имя константы в методе рекомендации, где бы ни был установлен тип аргумента.

Часть 2 - Spring Framework Вопросы для интервью (Advanced)

Давайте теперь посмотрим на расширенные вопросы интервью для фреймворка Spring.

Q6.В чем разница между Spring AOP и AspectJ AOP?

Ответ:
AspectJ - это стандартная для Аспектно-ориентированного программирования отраслевая реализация, тогда как Spring реализует AOP для нескольких случаев. Основные различия между Spring AOP и AspectJ:

  • Spring AOP проще в использовании, чем AspectJ, так как нам не приходится беспокоиться о методе плетения.
  • Spring AOP поддерживает аннотации AspectJ, поэтому, если вы знакомы с AspectJ, то работа с Spring AOP менее сложна.
  • Spring AOP поддерживает исключительно AOP на основе прокси-сервера, поэтому его часто применяют исключительно для выполнения технических приемов. AspectJ поддерживает все типы pointcut.
  • Одним из недостатков Spring AOP является то, что он часто применяется исключительно к bean-компонентам, созданным с помощью Spring Context.

Q7.Что такое Spring Bean?

Ответ:
Любая традиционная Java-категория, инициализированная Spring IoC, называется Spring Bean. мы склонны использовать Spring ApplicationContext для побуждения экземпляра Spring Bean.
Spring IoC управляет жизненным циклом Spring Bean, областями действия bean-объектов и внедрением любых необходимых зависимостей в bean-компоненте.

Давайте перейдем к следующим весенним рамкам Интервью Вопросы.

Q8). Каковы различные области применения Spring Bean?

Ответ:
Для Spring Beans выделено 5 областей.

  1. singleton : для каждого инструмента создается только 1 экземпляр компонента. это может быть областью по умолчанию для пружинных бобов. в то же время, используя эту область, убедитесь, что у bean-компонента Spring нет общих переменных экземпляра, в противном случае это приведет к проблемам с несогласованностью информации в результате того, что оно не поточно-ориентировано.
  2. Прототип : экземпляр замены создается при каждом запросе компонента.
  3. request : это может совпадать с областью действия парадигмы, но предназначено для сетевых приложений. заменяющий экземпляр компонента создается для каждого HTTP-запроса.
  4. сеанс : заменяющий компонент создается для каждого сеанса HTTP с помощью инструмента.
  5. international-session: это может быть использовано для создания глобальных сессионных компонентов для приложений с портлетами.

Spring Framework является расширяемым, и мы также будем создавать свои собственные области, но большую часть дней мы склонны проявлять разумность к областям, предоставляемым Framework.

Чтобы установить области действия Spring Bean, мы можем использовать атрибут «scope» в части компонента или аннотацию @Scope для аннотаций, основанных в основном на конфигурациях.

Чтобы установить области действия Spring Bean, мы можем использовать атрибут «scope» в элементе bean или аннотацию @Scope для конфигураций на основе аннотаций.

Q9. Каков жизненный цикл Spring Bean?

Ответ:
Это часто задаваемые вопросы об интервью в рамках Spring. Spring Beans инициализируется инструментальным средством Spring, и каждому вводятся зависимости. как только контекст уничтожен, он дополнительно уничтожает все инициализированные bean-компоненты. Это работает хорошо в большинстве случаев, однако, как правило, мы хотели бы инициализировать альтернативные ресурсы или выполнить некоторую проверку перед созданием наших bean-компонентов, способных к использованию. Spring Framework обеспечивает поддержку способов пост-инициализации и предварительного уничтожения в bean-компонентах Spring.
Это можно сделать двумя способами: с помощью реализации интерфейсов InitializingBean и DisposableBean или использования атрибутов init-method и destroy-method в конфигурациях bean-компонентов.

В10. Spring Bean обеспечивает безопасность потоков?

Ответ:
Область по умолчанию для Spring bean-компонента - одиночная, поэтому в каждом контексте будет только 1 экземпляр. Это означает, что у каждого, имеющего переменную уровня категории, которую обновит любой поток, может возникнуть противоречивая информация. таким образом, в режиме по умолчанию пружинные компоненты не кажутся поточно-ориентированными.
Тем не менее, мы можем модифицировать область действия Spring bean для запроса, парадигмы или сеанса для достижения безопасности потока при значении производительности. Это дизайнерское решение и поддержание потребностей проекта.

Рекомендуемая статья

Это было руководство по списку вопросов и ответов на собеседование в Spring Framework, чтобы кандидат мог легко разобрать эти вопросы для собеседования в Spring Framework. Здесь, в этом посте, мы изучили основные вопросы интервью Spring Framework, которые часто задают в интервью. Вы также можете посмотреть следующие статьи, чтобы узнать больше -

  1. Spring Boot Interview Вопросы
  2. J2EE Интервью Вопросы
  3. PHP OOP Интервью Вопросы
  4. Typescript Интервью Вопросы
  5. Весна против Hibernate: каковы различия
  6. Spring vs Struts: Особенности