[Spring Boot] (1) Creación y uso de proyectos Spring Boot


prefacio

En el mundo actual del desarrollo de software, Spring Boot es un marco de Java que recibe mucha atención. Proporciona a los desarrolladores una forma simplificada y eficaz de crear aplicaciones Java . Este artículo presenta principalmente el concepto y las ventajas de Spring Boot, demuestra cómo crear proyectos Spring Boot de diferentes maneras y, finalmente, demuestra cómo generar "Hello World" a través de Spring Boot.

1. ¿Qué es Spring Boot?

1.1 Conociendo primero Spring Boot

Spring Boot es un marco de código abierto para crear aplicaciones Java y es un subproyecto de Spring Framework, por lo que se puede decir que el proyecto Spring Boot también es un proyecto Spring . Spring Boot tiene como objetivo simplificar y acelerar el proceso de desarrollo de aplicaciones Spring. Al proporcionar configuración predeterminada y configuración automática, los desarrolladores pueden centrarse más en la implementación de la lógica empresarial sin prestar demasiada atención a los tediosos problemas de configuración e integración.

En pocas palabrasSpring 的诞生是为了简化 Java 程序的开发,而 Spring Boot 的诞生则是为了简化 Spring 程序的开发 .

De la traducción de Spring Boot (andamios de primavera), se puede ver que los andamios se construyen para construir casas y el propósito es acelerar la construcción de casas; andamios de primavera significa que fueron creados para acelerar el desarrollo de los programas de primavera. .

1.2 La idea central de diseño de Spring Boot

La idea central de diseño de Spring Boot es 约定大于配置(Convention Over Configuration)y自动配置(Auto-configuration) .

1. Convención sobre configuración

Spring Boot se utiliza 一系列的约定para proporcionar un comportamiento predeterminado, de modo que los desarrolladores no necesiten configurarlo manualmente en la mayoría de los casos, lo que reduce la complejidad del proyecto . Por ejemplo, al crear un proyecto web Spring Boot, configurará un servidor web integrado de forma predeterminada, sin necesidad de que configuremos explícitamente el contenedor Tomcat o Jetty.

2. Configuración automática
El proyecto Spring Boot configurará y ensamblará automáticamente varias funciones para la aplicación de acuerdo con las dependencias de la aplicación y los componentes en la ruta de clase . Esto significa que podemos introducir algunas dependencias específicas en el proyecto y Spring Boot configurará automáticamente las funciones correspondientes en función de estas dependencias, lo que simplifica muchos procesos de configuración manual.

1.3 Ventajas de Spring Boot

Aprender y usar Spring Boot nos ha brindado muchas comodidades, como:

  1. Mejore la eficiencia del desarrollo约定大于配置 : las funciones y Spring Boot 自动配置hacen que el proceso de desarrollo sea más eficiente. Reduce en gran medida la escritura de código repetitivo, lo que permite a los desarrolladores centrarse más en la implementación de la lógica empresarial, mejorando así la eficiencia del desarrollo .

  2. Configuración simplificada : Spring Boot tiene muchas configuraciones predeterminadas integradas, por lo que los desarrolladores no necesitan configurar manualmente una gran cantidad de opciones . No solo puede reducir la posibilidad de error, sino que también reduce en gran medida la complejidad del proyecto.

  3. Servidor integrado : Spring Boot incluye servidores web de uso común, como Tomcat, Jetty, etc., que hacen que sea muy sencillo empaquetar la aplicación en un archivo JAR ejecutable y ejecutarla . No es necesario implementar un servidor web independiente adicional y la aplicación se puede implementar fácilmente en varios entornos.

  4. Soporte de microservicios : Spring Boot proporciona un buen soporte para construir una arquitectura de microservicios. Puede crear y administrar fácilmente varios microservicios. A través del proyecto Spring Cloud, también puede realizar el registro y descubrimiento de servicios, el equilibrio de carga, el modo de disyuntor y otros microservicios.

  5. Una gran cantidad de dependencias iniciales : Spring Boot proporciona muchas dependencias "iniciales" preconfiguradas, que cubren una variedad de bibliotecas y marcos de uso común, como Spring Data JPA, Spring Security, Thymeleaf, etc. Estas dependencias iniciales simplifican el proceso de integración de otros marcos, lo que facilita la creación de aplicaciones ricas en funciones.

2. Creación del proyecto Spring Boot.

2.1 Crear con IDEA

Cuando use IDEA para crear un proyecto Spring Boot, si está usando la edición comunitaria, primero debe instalar Spring Boot Helperel complemento, pero debe tenerse en cuenta que si la versión de IDEA es la versión 21 o anterior, porque este complemento ha sido cargado desde la versión 22.

Por supuesto, si es una versión profesional, no es necesario instalar este complemento, después de todo es VIP. A continuación se muestra un proyecto Spring Boot creado con IDEA 2022 Professional Edition.

  1. Primero, use IDEA para crear un nuevo proyecto.

Como se muestra en la siguiente figura:

Tenga en cuenta que la versión de JDK seleccionada y la versión de Java predeterminada deben ser consistentes; de lo contrario, la creación fallará.

  1. Haga clic en Siguiente, seleccione la versión de Spring Boot y las dependencias requeridas

Al seleccionar la versión, dado que se usa JDK 8, la versión Spring Boot seleccionada es 2.xx y la versión 3.xx debe usar una versión más nueva, como JDK17.

Luego seleccione las dependencias requeridas,

  1. Finalmente, elija Crear para crear.

    Si puede ver la clase de inicio y un símbolo de triángulo que se puede ejecutar, significa que la creación fue exitosa.

2.2 Crear con página web

Cuando usamos IDEA para crear un proyecto Spring Boot, encontramos una dirección start.spring.io. Abra esta dirección y puede crear un proyecto Spring Boot directamente en la página web.

  1. URL abierta


En este punto podrás descubrir una variedad de opciones. Entre ellos, el lado izquierdo son algunas opciones de configuración básicas, mientras que el lado derecho es la selección de las dependencias requeridas.

  1. seleccionar configuración


El contenido seleccionado es exactamente el mismo que el seleccionado al usar IDEA para crear.

  1. elige depender

  1. descargar archivo zip


Haga clic GENERATEpara descargar el paquete comprimido y, por supuesto, puede hacer clic en Siguiente EXPLOREpara obtener una vista previa.

  1. Descomprima el paquete comprimido que acaba de descargar y luego use IEDA para abrir el archivo descomprimido

Abrir la cremallera:

Abierto con IEDA:


5. En este punto, se ha creado correctamente un proyecto Spring Boot utilizando la página web.

Además, también puede utilizar Alibaba Cloud start.aliyun.com para crear, y el método de creación es exactamente el mismo:

2.3 Estructura de directorios del proyecto

Cuando se crea un proyecto Spring Boot, puede ver su estructura de directorios como se muestra a continuación:

Esta es la estructura de directorios de un proyecto típico de Spring Boot. La siguiente es una breve descripción de cada directorio:

  • src/main/java: El directorio donde se almacena el código Java principal. Esto generalmente contiene la lógica del código principal del proyecto, como el controlador (controlador), el modelo (modelo), la capa de acceso a datos (repositorio), etc.

  • src/main/resources: El directorio principal de almacenamiento de archivos de recursos. Aquí se pueden colocar archivos de configuración, archivos de recursos estáticos, archivos de plantilla, etc. application.propertiesO application.ymlgeneralmente se usa para configurar las propiedades de la aplicación.

  • src/test: El directorio donde se almacena el código de prueba. Aquí se pueden escribir varios casos de prueba para probar el código del programa.

  • pom.xml: El archivo de configuración del proyecto Maven. Maven es la herramienta de compilación predeterminada para el proyecto Spring Boot y configura las dependencias del proyecto y los ajustes de compilación a través del archivo pom.xml.

  • .mvn: Contiene archivos relacionados con Maven Wrapper para realizar compilaciones de Maven y otras tareas de Maven sin instalar Maven manualmente.

  • mvnwY mvnw.cmd: este es el script de Maven Wrapper para ejecutar comandos de Maven sin instalar Maven.

  • HELP.md: Un archivo de documentación de ayuda en formato Markdown. Se utiliza para proporcionar una breve introducción sobre el proyecto, preguntas frecuentes (FAQ), comandos comunes, guía de inicio rápido, etc., para ayudar a los desarrolladores a comprender y utilizar rápidamente el proyecto.

3. Hola mundo

3.1 Ejecutar la clase de inicio

Haga clic en el método de la clase de inicio mainpara ejecutar el proyecto Spring Boot y el inicio se realizará correctamente, como se muestra en la siguiente figura:

Al iniciar el registro impreso, puede encontrar que el número de puerto predeterminado es 8080:

3.2 Generar Hello World a través de la página del navegador

demoCree un subdirectorio debajo del directorio y controllercree una HelloControllerclase dentro de él. Esta es una clase simple de controlador Spring Boot (Controlador) que maneja /hellosolicitudes HTTP de rutas y devuelve una cadena "Hola mundo" en respuesta.

@Controller
@ResponseBody
public class HelloController {
    
    

    @RequestMapping("/hello")
    public String hello(){
    
    
        return "Hello World";
    }
}

La explicación de este código es la siguiente:

  • @Controller: Esta anotación marca la clase como una clase de controlador Spring. Le dice al marco Spring que este es un controlador que maneja solicitudes HTTP.

  • @RequestMapping("/hello"): Esta anotación /helloasigna rutas a hello()métodos. Cuando un cliente envía una solicitud /hello, Spring Boot llamará hello()al método para procesar la solicitud.

  • @ResponseBody: Esta anotación le dice a Spring que devuelva el valor de retorno del método directamente como contenido de la respuesta HTTP en lugar de saltar a una página de visualización. En este ejemplo, hello()la cadena "Hola mundo" devuelta por el método se devuelve directamente al cliente como una respuesta HTTP.

Este sencillo programa Spring Boot demuestra cómo crear un controlador básico que maneje una solicitud HTTP y devuelva una respuesta. Después de ejecutar este programa, cuando visite el navegador http://localhost:8080/hello, verá la cadena "Hola mundo" en el navegador como respuesta.

3.3 La encarnación del acuerdo es mayor que la configuración.

En el primer programa Spring Boot anterior, podemos ver que la convención es mayor que la configuración, de la siguiente manera :

  1. Convenciones de nomenclatura : en Spring Boot, de forma predeterminada, las convenciones de nomenclatura de las clases y métodos del controlador determinan su comportamiento .

    • En este ejemplo, HelloControllerla clase está marcada como @Controller, por lo que Spring Boot la reconocerá como una clase de controlador y manejará las solicitudes HTTP.
    • hello()El método está marcado como @RequestMapping("/hello")tal que maneja /hellosolicitudes HTTP desde la ruta.
    • Estas convenciones de nomenclatura predeterminadas eliminan gran parte de la configuración, de modo que los desarrolladores no necesitan configurar manualmente la asignación entre clases y métodos de controlador y rutas de solicitud.
  2. @ResponseBodyAnotación : en hello()el método, se utiliza la anotación @ResponseBody, que le indica a Spring Boot que devuelva el valor de retorno del método directamente como contenido de la respuesta HTTP.

    • Esto significa que no necesitamos hello()definir una plantilla de vista adicional para el método, ya que la cadena "Hola mundo" devuelta se convertirá directamente en el contenido de la respuesta.
    • Esta convención simplifica el proceso de manejo de respuestas, lo que permite a los desarrolladores centrarse en la lógica empresarial sin preocuparse por la representación de la vista.
  3. Configuración predeterminada : Spring Boot proporciona una gran cantidad de configuraciones predeterminadas, como el servidor web predeterminado (como: Tomcat, Jetty), la configuración de fuente de datos predeterminada, la configuración de registro predeterminada, etc. Estas configuraciones predeterminadas pueden satisfacer las necesidades en la mayoría de los casos, reduciendo el trabajo de configuración manual. Los desarrolladores sólo necesitan realizar anulaciones de configuración cuando sea necesario.

A través de estas convenciones, no realizamos explícitamente una gran cantidad de configuraciones en el código anterior, sino que confiamos en las convenciones y configuraciones predeterminadas de Spring Boot. Esto hace que el código sea conciso y fácil de leer, reduce el código redundante innecesario y mejora la eficiencia del desarrollo. Esta es una encarnación típica de la convención sobre la configuración , lo que hace que el desarrollo de aplicaciones Spring Boot sea más fácil y eficiente.

Supongo que te gusta

Origin blog.csdn.net/qq_61635026/article/details/132118556
Recomendado
Clasificación