Самые часто задаваемые вопросы и ответы на собеседовании по Spring Boot
Опубликовано: 2022-01-10Spring boot — одна из главных тем обсуждения на большинстве собеседований в сфере ИТ, особенно когда речь идет о разработке Java-приложений. Благодаря своей быстрой, малой конфигурации, встроенному серверу и функциям самоконтроля Spring Boot помогает создавать независимые приложения на основе Java с надежной и удобной в сопровождении структурой.
Эта статья расскажет вам обо всех вопросах весенней загрузки, как для более свежих, так и для продвинутых интервью.
Оглавление
Что такое весенняя загрузка?
Spring boot — это платформа на основе Java, которая в основном используется для создания независимых микросервисов или быстрой разработки приложений. Он поставляется с добавленной поддержкой автоматической настройки и встроенными серверами для приложений Jetty и Tomcat.
С технической точки зрения, Spring Boot относится к микро-фреймворку с открытым исходным кодом, поддерживаемому предприятием — Pivotal. Этот фреймворк представляет собой платформу для Java-разработчиков, позволяющую создавать автоматически настраиваемые весенние приложения производственного уровня. Java-разработчики, использующие Spring Boot, могут эффективно подготовить и настроить все свои Spring-приложения.
Что делает весеннюю загрузку уникальной?
Spring boot выделяется среди других аналогов тем, что:
- Это помогает разрабатывать автономные приложения Spring с минимальными потребностями в конфигурации.
- Он предлагает начальные зависимости для оптимизации и упрощения конфигурации сборки.
- Он позволяет встраивать Jetty, Tomcat и т. д. без развертывания файлов WAR.
- Он включает в себя множество готовых к работе функций, включая проверки работоспособности, метрики и внешние системы конфигурации.
Что так популяризировало весенние ботинки?
Spring boot использует Java, один из самых популярных языков программирования, любимый разработчиками во всем мире. Это отличный инструмент, который помогает разработчикам Java запускать и поддерживать приложения корпоративного уровня, не беспокоясь о требованиях к конфигурации и проверках безопасности. Кроме того, сообщество Spring Boot обширно и очень изобретательно. Легкодоступная информация об этом фреймворке еще больше способствует повышению его популярности.
Кроме того, использование Spring Boot дает вам другие преимущества, такие как:
- Это сокращает время разработки при одновременном повышении производительности команды разработчиков.
- Он включает функцию автоматической настройки для всех компонентов для разработки приложений производственного уровня.
- Он имеет настройку по умолчанию для интеграции и модульных тестов, что делает его надежной платформой для разработчиков Java.
- Он не требует многочисленных шаблонных кодов, конфигураций XML или аннотаций.
- Он имеет встроенный HTTP-сервер, такой как Jetty, для тестирования веб-приложений.
- Он включает в себя различные плагины, позволяющие разработчикам без проблем работать с памятью и встроенными базами данных.
- Это позволяет пользователям быстро подключаться к службам очередей и базам данных, таким как Oracle, MySQL, PostgreSQL, ActiveMQ, MongoDB, Solr, Redis, Rabbit MQ и т. д.
Главные вопросы интервью о весенней загрузке – Freshers
Вот некоторые из наиболее часто задаваемых вопросов для собеседований на уровне Spring Boot Fresher:
1. Упомяните преимущества создания приложений через весеннюю загрузку?
Ответ . Существенными преимуществами использования Spring Boot для разработки приложений являются:
- Очень просто понять при разработке приложений на основе Spring.
- Это уже существующий фреймворк со встроенной конфигурацией аннотаций и HTTP-сервером. Эти два аспекта облегчают понимание.
- Это повышает производительность при одновременном сокращении времени разработки.
- Требует минимальной настройки.
- Пользователям не нужно писать какую-либо XML-конфигурацию, за исключением некоторых частей, связанных с дизайном.
2. Можете ли вы рассказать нам о критических компонентах весенней загрузки?
Ответ Важными компонентами весенней загрузки являются:
- Автоматическая настройка весенней загрузки
- Пружинные чехлы стартера POM
- Весенняя загрузка CLI
- Каркас привода пружинного ботинка
3. Почему Java-разработчики предпочитают использовать Spring Boot, а не Spring?
Ответ Большинство разработчиков Java действительно предпочитают использовать весеннюю загрузку вместо весны. Это происходит из-за следующих особенностей:
- Управление версиями
- Стартер ПОМ
- Автоматическая настройка
- Встроенный сервер
- Приводы
- Сканирование компонентов
- БД InMemory.
4. Каковы различные стартовые модули зависимостей весенней загрузки?
Ответ . Наиболее часто используемые стартовые инструменты зависимостей:
- Тестовый стартер
- JPA-инструмент данных
- Стартер безопасности
- Почтовый стартер
- Веб-стартер
- Стартер из листьев тимьяна
5. Можете ли вы рассказать нам, как именно работает Spring Boot?
Ответ Инфраструктура загрузки Spring автоматически настраивает приложение на основе зависимостей, введенных разработчиком Java в проект приложения, и конфигурации аннотаций. Начальная точка любого весеннего загрузочного приложения содержит аннотацию конфигурации «@SpringBootApplication » вместе с основной методологией.
Spring Boot также автоматически сканирует все компоненты проекта с помощью аннотации «@ComponentScan. “
6. Можете ли вы рассказать нам, что аннотация @SpringBootApplication делает внутри?
Ответ Аннотация «@SpringBootApplication» аналогична использованию « @Configuration, @EnableAutoConfiguration » и « @ComponentScan» вместе со всеми атрибутами этих аннотаций по умолчанию. Платформа загрузки Spring позволяет разработчикам Java использовать одну аннотацию, а не несколько.
7. Какова цель использования аннотации @ComponentScan в файле класса?
Ответ . Платформа весенней загрузки сканирует все объявления пакетов и bean-компоненты при инициализации приложения. После этого нам нужно встроить аннотацию конфигурации @ComponentScan . Это позволит файлам классов сканировать все компоненты, добавленные в проект.
Главные вопросы интервью о весенней загрузке — продвинутый уровень
Вот несколько популярных вопросов, которые задают на профессиональном уровне Spring Boot:
1. Как можно переопределить все свойства по умолчанию в любом загрузочном приложении Spring?
Ответ . Spring boot предоставляет несколько свойств, которые можно перезаписать. Вы можете сделать это, указав изменения в свойствах приложения. Например, если вам нужно указать какой-либо префикс или суффикс в приложении Spring MVC, вы можете сделать это, внедрив следующие свойства в файл application.properties:
- «spring.mvc.view.suffix:»
- «.jsspring.mvc.view.prefix: /WEB-INF/»
2. Как бы вы запустили загрузочное приложение Spring на пользовательском порту?
Ответ Чтобы запустить приложение весенней загрузки в пользовательском порту, вам нужно только поместить файл server. функции порта в свойствах приложения. Например:
« сервер.порт=8050″
3. Почему вы выбрали загрузочные модули Spring в своих Java-приложениях?
Ответ . Использование модулей загрузки Spring упрощает создание приложений на основе Spring. Это поможет вам значительно сэкономить время и усилия.
Допустим, вы хотите разработать проект загрузки Spring с помощью ActiveMQ . Для этого вы можете просто внедрить « spring-boot-starter-activemq » в качестве кода артефакта. Он автоматически примет значения по умолчанию, создав приложение Spring на основе ActivemQ.
Однако предположим, что вы не хотите использовать встроенный ActiveMQ. Здесь вы можете просто переопределить «spring.activemq.broker-URL» в application_properties, чтобы использовать внешний ActiveMQ.
4. Расскажите об использовании DevTools в модулях Spring boot?
Ответ . Spring boot поставляется со встроенными инструментами DevTools, что повышает общую производительность разработчиков. Самым значительным преимуществом DevTools является то, что вам не нужно повторно развертывать приложение каждый раз, когда вы вносите изменения. Обычно разработчики могут просто перезагрузить соответствующие изменения без перезапуска сервера. Это позволяет избежать проблем с повторным развертыванием приложений каждый раз, когда происходит изменение.
5. Что вы подразумеваете под приводом в модулях весенней загрузки?
Ответ . Привод пружинного чехла является наиболее важной особенностью пружинного чехла. Он используется для доступа к текущей форме запущенных приложений в производственной среде. Кроме того, вы можете использовать несколько метрик для проверки текущего состояния Java-приложения.
Активаторы Spring Boot обеспечивают бесперебойную работу веб-сервисов с конечными точками, которые могут просто проверять необходимые метрики. Например, конечная точка «/ metrics:» показывает такие метрики, как процессоры, свободная память, время безотказной работы и другие свойства.
Таким образом, исполнительный механизм Spring Boot позволяет разработчикам контролировать приложение в производственной среде. Эти конечные точки RESTful довольно чувствительны, то есть они предлагают ограниченный доступ исключительно для аутентифицированных пользователей. Однако вы можете переопределить in-app.properties, чтобы изменить эту функцию.
6. Как вы сможете внедрить систему безопасности Spring в любое приложение, основанное на загрузке Spring?
Ответ . Реализация безопасности Spring в любом приложении Spring Boot требует минимальной настройки. Вам просто нужно ввести spring-boot-starter-security-starter в pom.xml. После этого вы должны ввести класс configure, который будет расширяться до WebSecurityConfigurerAdapter , переопределяя все методы для достижения требуемой безопасности в любом загрузочном приложении Spring.
7. Расскажите нам о разнице между @Controller и @RestController в модуле Spring Boot?
Ответ Модель @RestController просто возвращает объекты, а также данные объекта. Оба они написаны напрямую с использованием HTTP-ответа в виде XML или JSON.
С другой стороны, @Controller Map модели весенней загрузки позволяет просматривать проект в виде шаблона и делать его читабельным для людей.
Вы стремитесь пройти весеннее собеседование?
Ознакомьтесь с курсом Магистр наук в области компьютерных наук на апГраде. Этот курс знакомит вас с Java, Python и многими другими инструментами, такими как Spark, MapReduce, Tableau, AWS, Keras и т. д. Этот онлайн-курс, курируемый отраслевыми экспертами и ведущими наставниками, полностью меняет правила игры для соискателей, стремящихся повысить квалификацию, сохраняя свои текущие профессиональные обязательства.
Заключение
Spring boot — модное и необходимое дополнение для Java-разработчиков. Сегодня многие вакансии по разработке программного обеспечения требуют, чтобы разработчики обладали знаниями Spring Boot. В конце концов, это делает разработку приложений на основе Java простым и беспроблемным делом. Независимо от того, являетесь ли вы новичком или опытным разработчиком, хорошее знание основ Spring Boot даст вам преимущество над конкурентами.
Можно ли использовать Spring Boot с не-весенними приложениями?
Нет, это невозможно, потому что загрузка Spring строго ограничена только всеми приложениями на основе Spring.
Используется ли spring boot для разработки только REST API?
Нет, Spring Boot предназначен не только для API на основе REST. Вместо этого это механизм автоконфигурации для приложений на основе Java. Следовательно, вы можете использовать его как для внутреннего, так и для внешнего интерфейса.
Каковы недостатки загрузки Spring?
Основные недостатки:
1. Он отлично подходит для микросервисов, но не подходит для крупномасштабных проектов.
2. Преобразование устаревшего приложения или существующего проекта Spring в приложение Spring Boot занимает довольно много времени.
3. Часто приводит к многочисленным ненужным зависимостям, увеличивая размер файла развертывания.