Geekflare cuenta con el apoyo de nuestra audiencia. Podemos ganar comisiones de afiliados comprando enlaces en este sitio.
Comparte en:

22 preguntas y respuestas frecuentes de la entrevista Spring Boot

springboot-entrevista-preguntas
Escáner de seguridad de aplicaciones web Invicti – la única solución que ofrece verificación automática de vulnerabilidades con Proof-Based Scanning™.

¿Es usted un desarrollador de Java Spring Boot que desea participar en una próxima entrevista pero no está seguro de qué preguntas esperar? ¡Estamos aquí para ayudar!

Este artículo lo ayudará a prepararse adecuadamente al describir varias preguntas y respuestas frecuentes de la entrevista de Spring Boot que los entrevistadores pueden usar para evaluarlo.

Los entrevistadores usan preguntas estratégicas de Java Spring Boot para probar los niveles de habilidad de los entrevistados relevantes para su rol designado. Por lo tanto, debe prepararse con preguntas relevantes y saber cómo responderlas.

Antes de pasar directamente a las preguntas de la entrevista y sus respuestas correspondientes, cubramos una descripción general básica de lo que es Spring Boot y lo útil que es para los desarrolladores de Java.

¿Qué es Java Spring Boot?

Este Marco de Java es una creación del equipo pivotal en 2014. Spring Boot, que es un marco de código abierto, desarrolla de manera eficiente aplicaciones que son independientes, de nivel de producción y que también pueden ejecutarse en una máquina virtual Java (JVM).

Los desarrolladores de Java lo prefieren para aplicaciones web y microservicios desarrollo por su proceso de configuración rápido y fácil y tiempo de configuración seguro.

La instalación y configuración sencillas de las aplicaciones basadas en Spring por Spring Boot son posibles con sus tres capacidades principales que incluyen:

  • Configuración automática: que es una configuración automática de la aplicación Spring.
  • Spring Boot proporciona un enfoque obstinado de los valores predeterminados de configuración que se usarán y los paquetes que se instalarán para las dependencias requeridas. Este enfoque obstinado ayuda en la configuración rápida de los proyectos.
  • Sprsetupoot le permite ejecutar su aplicación de forma independiente sin necesidad de un servidor web.

¿Cómo es Spring Boot útil para los desarrolladores de Java?

Por un lado, los desarrolladores de Java que usan Spring Boot lo tienen más fácil con la configuración automática de todos los componentes necesarios para desarrollar una aplicación Spring de nivel de producción. Esto, a la larga, reduce el tiempo de desarrollo y eventualmente aumenta su eficiencia.

Spring Boot también se integra fácilmente con el ecosistema de Spring, que incluye Spring JDBC, Spring Data, Spring Security y Spring ORM.

Los desarrolladores de Java también pueden conectar Spring Boot con diferentes bases de datos como Oracle, MySQL, PostgreSQL y MongoDB, entre otros.

Por supuesto, las configuraciones flexibles con configuraciones XML, Java Beans y transacciones de bases de datos se encuentran entre otras características útiles.

Por lo tanto, ahora que tiene una descripción general básica de Spring Boot, consideremos algunas de las preguntas y respuestas frecuentes de la entrevista de Spring Boot que lo ayudarán a prepararse para su entrevista.

Preguntas y respuestas de la entrevista Spring Boot

Preguntas de la entrevista Spring Boot

What are some features of Spring Boot?

Algunas de estas características populares incluyen:

  • Spring Boot CLI proporciona Groovy para escribir la aplicación Spring Boot; a la larga, se evita el código repetitivo.
  • Spring Boot proporciona registro y una función de seguridad que protege fácilmente su aplicación de posibles amenazas de seguridad.
  • Proporciona configuración automática de componentes relevantes para su proyecto, evitando así el riesgo de archivos WAR innecesarios.
  • El inicializador inicial establece una estructura de proyecto interna predeterminada para usted. De esta forma, no tiene que configurar manualmente la estructura del proyecto.
  • La función del actuador Spring Boot brinda acceso a información y métricas a medida que se ejecuta la aplicación.
  • Por supuesto, una de las funciones clave de Spring Boot, Starter Dependency, ayuda a agregar las dependencias de uso común de una función en particular.

What are Spring Boot Starters?

Los iniciadores de Spring Boot son descriptores de dependencia que incluyen un conjunto de proveedores de administración de dependencias que habilitan las dependencias de la aplicación. Proporcionan el marco con resolución de dependencia automática. Los arrancadores potencian un desarrollo fácil y rápido.

What is an Actuator in Spring Boot, and what are its advantages?

El actuador es una de las características de Spring Boot que le permite monitorear lo que sucede dentro de una aplicación mientras se ejecuta.

Durante la depuración, por ejemplo, puede usar el actuador para analizar registros al permitir el acceso a funciones como el uso de la CPU y la identificación de beans.

Además, el actuador no solo brinda un fácil acceso a los puntos finales REST listos para la producción, que monitorean y administran la información, sino que también recuperan datos de la web.

What is thymeleaf, and how to use thymeleaf?

Thymeleaf es la plantilla del lado del servidor de Java que crea un diseño de plantilla natural para aplicaciones web Spring y HTML5 Java.

Spring Boot realizará una configuración automática de thymeleaf usando la dependencia spring-boot-starter-thymeleaf en el archivo pom.xml para servir el contenido web dinámico.

Para permitir que Spring Boot lea y represente las plantillas de hoja de tomillo o los archivos HTML, coloque las plantillas en src / main / resources / templates.

Thymeleaf luego analiza el archivo index.html y usa los valores reales que pasa de la clase de controlador en lugar de los valores dinámicos disponibles en el archivo de índice.

Después de esto, el mensaje se muestra en el navegador web tan pronto como se ejecuta la aplicación Spring Boot.

org.springframework.boot spring-boot-starter-thymeleaf

Describe the process of creating a Spring Boot project using Spring Initializer.

Spring Initializr, que es una herramienta web de Spring, le permite crear un proyecto de Spring Boot siguiendo unos pocos pasos proporcionando los detalles del proyecto.

  1. Pásate por Inicialización de primavera y complete los campos de entrada.
  2. Al hacer clic en el Generar El botón iniciará la descarga del proyecto.
  3. Extraiga el proyecto descargado del archivo zip y ábralo desde su IDE. Desde el IDE, navegue hasta Archivo-> Nuevo-> Proyecto de fuentes existentes->Spring-boot-app, luego seleccione el archivo pom.xml. Haga clic en el aviso de importación de cambios para que el proyecto se sincronice. Después de esto, recuerde ir al archivo application.properties y editar el número de server.port para server.port=7000.
  4. Ahora, ejecute la aplicación desde src->main->java->com.gfg.Spring.boot.app

What is JPA in Spring Boot?

Esta es una especificación en Java que utiliza Mapeo de relación de objetos (ORM) para administrar datos relacionales y permite el acceso a datos entre el objeto Java o la clase Java y la base de datos relacional de la aplicación.

JPA utiliza Java Persistent Query Language (JPQL), un lenguaje de consulta orientado a objetos que también es independiente de la plataforma.

JPA permite el procesamiento de consultas y transacciones de objetos contra la base de datos utilizando la API de Entity Manager que proporciona.

What is auto-configuration in Spring Boot?

La configuración automática busca automatizar la configuración de la aplicación Spring Boot utilizando las dependencias jar que agrega a las aplicaciones.

Según las dependencias disponibles en Classpath de la aplicación, la configuración automática declarará los objetos integrados del módulo específico de Spring, incluidos JPA y Spring Security, entre otros.

What are Spring Annotations?

Las anotaciones Spring se refieren a metadatos que ofrecen información sobre un fragmento de programa y agregan datos complementarios a ese programa. Los componentes del código, incluidas las clases y los métodos, a menudo se asocian con anotaciones.

Las anotaciones no afectan directamente el funcionamiento del programa ni la acción posterior del código compilado.
Su sintaxis comienza con '@' símbolo.

Spring Boot proporciona seis tipos principales de anotaciones que incluyen:

  • Anotaciones de Spring Core
  • Anotaciones de datos de primavera
  • Anotaciones de frijol primavera
  • Anotaciones web de primavera
  • Anotaciones de programación de primavera
  • Anotaciones de arranque de primavera

What does Spring Data REST mean?

Spring Data REST expone los recursos en RESTful que están alrededor de Spring Data Resources utilizando un código mínimo.

El siguiente ejemplo usa el método POST para solicitar contenido usando http://localhost/example como la URL y Tipo de contenido: application / json como el encabezado.

Solicitar contenido:

{
    "name": "Jimmy",
    "Gender": "Male",
    "Age": 23
}

Contenido de la respuesta:

{
    "name": "Jimmy",
    "Gender": "Male",
    "Age": 23
    "_links": {
        "self": {
            "href": "http://localhost:8080/example/1"
        },
        "person": {
            "href": "http://localhost:8080/example/1"
         }
    }
}

What is the need for Spring Boot DevTools?

Se trata de un amplio conjunto de herramientas predefinidas cuyas propiedades se aplican a los respectivos entornos de desarrollo para facilitar el desarrollo y ahorrar tiempo de desarrollo.

Cada vez que cambia el código en la aplicación Spring Boot, la función Spring Boot DevTools se reinicia automáticamente. Por lo tanto, le ahorra la molestia de reiniciar manualmente su aplicación cada vez que modifica su código.

What is Spring Data?

Spring Data busca brindar a los desarrolladores un fácil acceso a tecnologías de acceso a datos, como datos relacionales y no relacionales y servicios de datos basados ​​en la nube, ya que continúa manteniendo las características especiales del almacén de datos subyacente.

How to tell an auto-configuration to back away when a bean exists?

Aquí utilizará la anotación @ConditionalOnMissingBean, que incluye el atributo de nombre y valor de la siguiente manera.

  • El atributo de valor almacena el tipo de bean para comprobar
  • atributo de nombre que nombra el bean para verificar

How to fetch data from the database in Spring Boot?

Podemos acceder a los datos de una base de datos MySQL a nuestra aplicación Spring Boot siguiendo los siguientes pasos.

Paso 1: Use el create DATABASE person comando para crear la base de datos en MySQL.

Paso 2: Dentro de la base de datos, cree una tabla:

CREATE TABLE person(id INT PRIMARY KEY NOT NULL AUTO_INCREMENT, name VARCHAR(255));

Paso 3: Ahora cree una aplicación Spring Boot, luego agréguele JDBC, MySQL y las dependencias web requeridas.

Paso 4: Configure la base de datos desde el archivo application.properties como se muestra a continuación.

spring.datasource.url=jdbc:mysql://localhost:3306/personDetails
spring.datasource.username=example123
spring.datasource.password=example123
spring.jpa.hibernate.ddl-auto=create-drop

Paso 5: A continuación, manejemos las solicitudes en la clase de controlador:

package com.person;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class JdbcController {
   @Autowired
   JdbcTemplate jdbc;
   @RequestMapping("/save")
   public String index(){
      jdbc.execute("insert into person (name)values(Trial)");
      return "Name entered Successfully";
   }
}

Por último, ejecute su aplicación mientras verifica la entrada de la base de datos para ver los datos a los que se accedió.

Why do we need Spring Profiles?

Spring Profiles permite la segregación de la configuración de una aplicación de diferentes partes y aprovecharlas para desarrollos específicos.

Spring Profiles también ahorra al desarrollador la molestia de administrar configuraciones externas específicas del entorno si Spring Profiles no estuviera disponible.

Además, esto dificultaría la sincronización y significaría la necesidad adicional de escribir varios componentes similares a los de fábrica que aprovecharían ciertas cosas requeridas según los parámetros específicos del entorno particular.

Can we change the port of the embedded Tomcat server in Spring boot?

Sí, podemos.

Esto se hace manipulando el aplicación.propiedades archivo para incluir el server.port propiedad y asignándole un puerto de su elección. Spring Boot carga automáticamente el archivo de propiedades de la aplicación y aplica las configuraciones requeridas a la aplicación.

Por ejemplo, puede cambiar el server.port número del valor predeterminado de 8080 a server.port= 8081.

How do you configure Log4j for logging?

Con estos sencillos pasos, podemos configurar Log4j para iniciar sesión:

  1. Primero, cree su proyecto Java, luego haga clic derecho en el proyecto. Navegar a MyEclipse->Archivo->Nuevo->Proyecto Java para nombrar el proyecto y haga clic en finalizar.
  2. A continuación, haga clic con el botón derecho en el nombre de su proyecto Java y seleccione Ruta de compilación -> Configurar ruta de compilación. Este paso agregará el archivo log4j.
  3. Vaya a la biblioteca y haga clic en el Agregar JARS externos y seleccione el archivo log4j en el menú desplegable que aparece. Luego haga clic en Aceptar.
  4. Crea un nuevo archivo java al que llamarás log4j.propiedades archivo, luego haga clic en finalizar y agregue este archivo a Classpath.
  5. Haga clic en Avanzado en Classpath, luego seleccione el Opción Agregar carpetas, y recuerda hacer clic en Aceptar.
  6. Ahora puede buscar el archivo log4j.properties, hacer clic en Aceptar y ejecutar el proyecto.
  7. Verifique la consola para ver la salida a continuación.
[main] DEBUG Example – Hello this is a debug message
[main] INFO Example – Hello this is an info message

What is an IoC Container?

El contenedor IoC (Inversion of Control) es un contenedor principal de Spring que implementa automáticamente la inyección de dependencia. Instancia la aplicación de la clase y es responsable de la configuración de los objetos y el ensamblaje de las dependencias necesarias.

También gestiona el ciclo de vida del objeto desde su instanciación hasta su destrucción.

IoC realiza estas tareas mediante la configuración de metadatos en código Java, XML y anotaciones Java.

El contenedor se denomina Inversión de control porque controla los objetos Java y los ciclos de vida de estos objetos. De lo contrario, esta es una tarea del desarrollador.

Explain how to create a Spring Boot application using Maven

Este proceso implica una serie de pasos.

Paso 1: Seleccione el tipo de proyecto.

Paso 2: Asigne un nombre a su proyecto para configurarlo, luego haga clic en el botón Finalizar para crear el proyecto.

Paso 3: Ahora, configuraremos el archivo pom.xml del proyecto Maven para crear un proyecto Spring Boot a partir de él.

archivo pom.xml:

<project xmlns="https://maven.apache.org/POM/4.0.0" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="https://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">  
  <modelVersion>4.0.0</modelVersion>  
  <groupId>com.javatpoint</groupId>  
  <artifactId>spring-boot-example</artifactId>  
  <version>0.0.1-SNAPS<name>JavaTpoint Spring Boot Example</name>  
</project>  

La configuración implica la adición de un padre al proyecto Maven. Esto declarará el proyecto Maven como un proyecto secundario del proyecto principal.

<parent>  
    <groupId>org.springframework.boot</groupId>  
    <artifactId>spring-boot-starter-parent</artifactId>  
    <version>1.4.2.RELEASE</version>  
</parent>  

Paso 4: Luego, agregue la dependencia web, spring-boot-starter-web, al pom.xml.

<dependencies>  
    <dependency>  
        <groupId>org.springframework.boot</groupId>  
        <artifactId>spring-boot-starter-web</artifactId>  
    </dependency>  
</dependencies>  

Paso 5: Agregue la versión de Java del proyecto.

<properties>  
    <java.version>1.8</java.version>  
</properties> 

Paso 6: Tenga en cuenta que cada vez que agrega nuevas dependencias, debe actualizar el proyecto Maven.

Paso 7: Haga que el proyecto Maven sea ejecutable creando una clase Java dentro del paquete src/principal/java.

Paso 8: A continuación, llame al método de ejecución estática de clase de la aplicación Spring.

Paso 9: Por último, ejecute la clase como una aplicación Java.

What are the advantages of Spring Boot over Spring?

  • La capacidad de arranque de Spring Boot para compilar el idioma de origen mediante el inicializador de arranque, una técnica llamada arranque, permite ahorrar espacio en los dispositivos de los usuarios y también reduce el tiempo de carga de la aplicación.
  • A diferencia de Spring, Spring Boot permite la administración de dependencias después de agregar las dependencias de arranque de primavera sin depender del POM principal (modelo de objeto principal) o el archivo XML.
  • Spring Boot también permite a los desarrolladores usar anotaciones o configuraciones XML sin necesidad de usar configuraciones XML.
  • Los desarrolladores prefieren Spring Boot por su reducido código repetitivo requerido para configurar una aplicación. Esto se debe a que Spring Boot viene con una base de datos en memoria y un servidor Tomcat incorporado, lo que reduce el código repetitivo. Spring, por otro lado, tiene más código repetitivo.
  • Spring Boot no requiere necesariamente archivos WAR (recursos de aplicaciones web) y solo puede confiar en JAR (recursos de Java), que tiene una estructura pequeña y más simple y, por lo tanto, es más útil para usuarios y desarrolladores.
  • Spring Boot también integra automáticamente servidores como Tomcat y Jetty; por lo tanto, el desarrollador no necesita configurar manualmente el servidor como se supone que debe hacer en Spring.

How to do pagination in Spring Boot?

El proceso de paginación divide los datos en secciones para ahorrar recursos. Implica dos campos, el tamaño de página y el número de página.

El proceso implica algunos pasos, que incluyen:

Paso 1: Configuración inicial
Consisetupn entidad vamos a nombrar Persona como la clase de dominio.

@Entity 
public class Person {
    @Id
    private long id;
    private String name; 
}

Paso 2: Creación de repositorio
A continuación, utilice un PersonRepository extends PagingAndSortingRepository para poder conseguir el findAll(Pageable pageable) y findAll(Sort sort) métodos de paginación y clasificación, respectivamente.

public interface PersonRepository extends PagingAndSortingRepository<Person, Integer> {
    List<Product> findAllByPrice(double price, Pageable pageable);
}

Paso 3: Paso de paginación
El primer paso aquí consiste en crear un Solicitud de página objeto; pasando el número de página y el tamaño de página según lo solicitado que implementa el Paginable de la interfaz del.

Pageable firstPageWithTwoElements = PageRequest.of(0,2);
Pageable secondPageWithThreeElements = PageRequest.of(1,3);

Entonces pasa esto Solicitud de página objeto al método de repositorio como un parámetro.

Page<Person> allProducts = personRepository.findAllByPrice(findPageWithTwoElements);
List<Items> allTwoDollarItems = itemsRepository.findAllByPrice(2, secondPageThreeElements) 

Por defecto, el findAll(Pageable pageable) el método devolverá un Page<T> objeto.

Explain how to register a custom auto-configuration

En el archivo META-INF/spring.factories de la clave @EnableAutoConfiguration, mencione el nombre completo. Este paso registra la clase de configuración automática.

org.springframework.boot.autoconfigure.EnableAutoConfiguration=com.baeldung.autoconfigure.CustomAutoConfiguration

Construir el proyecto usando Maven requerirá que coloques el archivo en el recursos/META-INF directorio.

What is bootstrapping in Spring Boot?

Bootstrapping es el proceso de ejecutar la lógica en la aplicación Spring Boot al inicio.
Boot initializr compila el idioma de origen en Spring Boot. Este proceso ahorra espacio en el dispositivo y también reduce el tiempo de carga de la aplicación.

Palabras finales 👨‍💻

Bueno, este artículo cubrió algunas preguntas de Spring Boot que los entrevistadores probablemente le harán durante su entrevista y las respuestas para ayudarlo a superarlo con confianza. ¡Esperamos que consigas el trabajo de tus sueños!

También puede querer aprender algunos consejos relevantes de las preguntas formuladas durante una entrevista Java.

¡Mucha suerte! 🙂

Gracias a nuestros patrocinadores
Más lecturas excelentes sobre la carrera
Impulse su negocio
Algunas de las herramientas y servicios para ayudar a que su negocio crezca.
  • Invicti utiliza Proof-Based Scanning™ para verificar automáticamente las vulnerabilidades identificadas y generar resultados procesables en cuestión de horas.
    Prueba Invicti
  • Web scraping, proxy residencial, administrador de proxy, desbloqueador web, rastreador de motores de búsqueda y todo lo que necesita para recopilar datos web.
    Prueba Brightdata
  • Semrush es una solución de marketing digital todo en uno con más de 50 herramientas en SEO, redes sociales y marketing de contenido.
    Prueba Semrush
  • Intruder es un escáner de vulnerabilidades en línea que encuentra debilidades de ciberseguridad en su infraestructura, para evitar costosas filtraciones de datos.
    Intente Intruder