Lo llevará a comprender rápidamente el popular Spring Boot actual, análisis de ventajas y desventajas

Ahora Spring Boot es muy popular. Hay muchos artículos técnicos y tutoriales pagados. Puede haber algunos que no conozcan Spring Boot. Entonces, ¿qué es? ¿Cuál es el uso? Hoy te lo presentaré en detalle.

Los cursos en video relacionados con SpringBoot también se comparten con usted. Sigo el springboot impartido por el Sr. Wang He del nodo de energía. El tutorial comienza con los detalles. Cada caso explica primero las dependencias importantes en pom.xml, seguido de la aplicación. archivo de configuración y finalmente la implementación del código. Hágale saber por qué y gradualmente le permitirá dominar la configuración automática del marco SpringBoot, las dependencias iniciales y otras características.

Recursos de vídeo relacionados:

https://www.bilibili.com/video/BV1XQ4y1m7ex

Antecedentes de Spring Boot

Para comprender Spring Boot, primero debe hablar sobre el marco Spring.

Hoy en día, cuando el marco de back-end de Java es próspero, el marco de Spring es sin duda el marco de código abierto más popular e indispensable, y es el líder del marco de back-end de Java.

Cualquiera que haya usado Spring Framework sabe que Spring es popular debido a sus dos poderosas herramientas: IOC y AOP. IOC puede ayudarnos a administrar las dependencias de objetos y reducir en gran medida el acoplamiento de objetos, mientras que la función de programación de aspectos de AOP puede ser más completa. Use proxies dinámicos para implementar varias funciones de métodos dinámicos (como transacciones, cachés, registros, etc.).

Para integrar Spring Framework, debe usar un archivo de configuración XML o una configuración de código Java anotado. Ya sea que use XML o configuración de código, debe tener suficiente comprensión de la configuración de los componentes relacionados y luego escribir una gran cantidad de código de configuración extenso.

Entonces, ¿cuántos desarrolladores pueden dominar estas configuraciones? ¿No sería tan fácil si solo proporcionamos algunos parámetros de configuración para que el marco configure automáticamente estos componentes?

¡Basado en el propósito de simplificar el inicio rápido de Spring, nació el marco Spring Boot!

¿Qué es Spring Boot?

Spring Boot es un subproyecto bajo la organización de código abierto Spring, y también es una solución integral para los componentes de Spring. Es principalmente para simplificar la dificultad de usar el marco Spring y ahorrar una configuración pesada.

Spring Boot proporciona iniciadores para varios componentes. Siempre que los desarrolladores puedan configurar los parámetros de los componentes correspondientes, Spring Boot los configurará automáticamente, lo que les permitirá crear rápidamente proyectos Java que dependan de los componentes de Spring.

Spring Boot no solo puede crear aplicaciones de paquetes de guerra tradicionales, sino también crear aplicaciones independientes independientes que no dependen de ningún contenedor externo (como: tomcat), que se pueden iniciar con el comando java -jar. Al mismo tiempo, Spring Boot también proporciona una herramienta de línea de comandos para ejecutar scripts de Spring.

El sitio web oficial de Spring Boot:

https://proyectos.spring.io/spring-boot/

Código fuente de Spring Boot:

https://github.com/spring-projects/spring-boot

Objetivos de diseño de Spring Boot

Si no sabe para qué se usa Spring, ¡echemos un vistazo al objetivo y la intención original de diseñarlo!

  • Proporcione una experiencia de entrada más rápida y fácil para el desarrollo de aplicaciones Spring;
  • Proporcione una serie de características públicas no funcionales que a menudo se usan en proyectos a gran escala, como: servidor incorporado, seguridad, métricas, detección de salud, configuración externa;
  • Generación de configuración de código cero y configuración XML cero;

¿Por qué Spring Boot es tan popular?

¿Por qué Spring Boot es tan popular? Porque tiene las siguientes características.

1. Operación independiente

Spring Boot incorpora varios contenedores Servlet, como Tomcat, Jetty, etc. Ahora, ya no es necesario empaquetarlo en un paquete de guerra e implementarlo en el contenedor. Spring Boot puede ejecutarse de forma independiente siempre que esté empaquetado en un paquete jar ejecutable. , y todos los paquetes dependientes están en el paquete Inside a jar.

2. Simplifique la configuración de Maven

Ahora, siempre que confíe en el paquete de inicio spring-boot-starter-web, que contiene todas las dependencias de todo el desarrollo web, puede tener la capacidad de Spring Web, que simplifica enormemente la configuración de las dependencias de maven.

También puede ver el árbol de dependencia completo usando el comando Maven: mvn dependency:tree:

[INFO] +- org.springframework.boot:spring-boot-starter-web:jar:2.0.1.RELEASE:compilar

[INFORMACIÓN] | +- org.springframework.boot:spring-boot-starter:jar:2.0.1.RELEASE:compilar

[INFORMACIÓN] | | +- org.springframework.boot:spring-boot:jar:2.0.1.RELEASE:compilar

[INFORMACIÓN] | | +- org.springframework.boot:spring-boot-autoconfigure:jar:2.0.1.RELEASE:compilar

[INFORMACIÓN] | | +- org.springframework.boot:spring-boot-starter-logging:jar:2.0.1.RELEASE:compilar

[INFORMACIÓN] | | | +- ch.qos.logback:logback-classic:jar:1.2.3:compilar

[INFORMACIÓN] | | | | \- ch.qos.logback:logback-core:jar:1.2.3:compilar

[INFORMACIÓN] | | | +- org.apache.logging.log4j:log4j-to-slf4j:jar:2.10.0:compilar

[INFORMACIÓN] | | | | \- org.apache.logging.log4j:log4j-api:jar:2.10.0:compilar

[INFORMACIÓN] | | | \- org.slf4j:jul-to-slf4j:jar:1.7.25:compilar

[INFORMACIÓN] | | +- javax.annotation:javax.annotation-api:jar:1.3.2:compilar

[INFORMACIÓN] | | \- org.yaml:snakeyaml:jar:1.19:tiempo de ejecución

[INFORMACIÓN] | +- org.springframework.boot:spring-boot-starter-json:jar:2.0.1.RELEASE:compilar

[INFORMACIÓN] | | +- com.fasterxml.jackson.core:jackson-databind:jar:2.9.5:compilar

[INFORMACIÓN] | | | +- com.fasterxml.jackson.core:jackson-annotations:jar:2.9.0:compilar

[INFORMACIÓN] | | | \- com.fasterxml.jackson.core:jackson-core:jar:2.9.5:compilar

[INFORMACIÓN] | | +- com.fasterxml.jackson.datatype:jackson-datatype-jdk8:jar:2.9.5:compilar

[INFORMACIÓN] | | +- com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.9.5:compilar

[INFORMACIÓN] | | \- com.fasterxml.jackson.module:jackson-module-parameter-names:jar:2.9.5:compilar

[INFORMACIÓN] | +- org.springframework.boot:spring-boot-starter-tomcat:jar:2.0.1.RELEASE:compilar

[INFORMACIÓN] | | +- org.apache.tomcat.embed:tomcat-embed-core:jar:8.5.29:compilar

[INFORMACIÓN] | | +- org.apache.tomcat.embed:tomcat-embed-el:jar:8.5.29:compilar

[INFORMACIÓN] | | \- org.apache.tomcat.embed:tomcat-embed-websocket:jar:8.5.29:compilar

[INFORMACIÓN] | +- org.hibernate.validator:hibernate-validator:jar:6.0.9.Final:compilar

[INFORMACIÓN] | | +- javax.validation:validation-api:jar:2.0.1.Final:compilar

[INFORMACIÓN] | | +- org.jboss.logging:jboss-logging:jar:3.3.2.Final:compilar

[INFORMACIÓN] | | \- com.fasterxml:classmate:jar:1.3.4:compilar

[INFORMACIÓN] | +- org.springframework:spring-web:jar:5.0.5.RELEASE:compilar

[INFORMACIÓN] | | \- org.springframework:spring-beans:jar:5.0.5.RELEASE:compilar

[INFORMACIÓN] | \- org.springframework:spring-webmvc:jar:5.0.5.RELEASE:compilar

[INFORMACIÓN] | +- org.springframework:spring-aop:jar:5.0.5.RELEASE:compilar

[INFORMACIÓN] | +- org.springframework:spring-context:jar:5.0.5.RELEASE:compilar

[INFORMACIÓN] | \- org.springframework:spring-expression:jar:5.0.5.RELEASE:compilar

3. Configuración automática

Spring Boot puede configurar Spring Bean automáticamente de acuerdo con las clases en la ruta de clase actual o las clases en el paquete jar.Por ejemplo, agregar un iniciador spring-boot-starter-web puede tener funciones web sin otra configuración. También puede agregar configuraciones relevantes en el archivo de configuración para personalizar el ensamblaje, que se discutirá en los siguientes cursos, preste atención al contenido de seguimiento.

4. Sin generación de código y configuración XML

No hay generación de código en el proceso de configuración de Spring Boot, y todo el trabajo de configuración se puede completar sin archivos de configuración XML.Todo esto se hace con la ayuda de anotaciones condicionales, que también es una de las funciones principales de Spring 4+.

5. Monitoreo de aplicaciones

Spring Boot proporciona una serie de puntos finales para monitorear servicios y aplicaciones, y para realizar controles de salud en las aplicaciones Spring.

Desventajas de Spring Boot

Habiendo dicho tantas ventajas y características de Spring Boot, aunque es fácil comenzar, no está exenta de desventajas. Cualquier marco tiene sus ventajas y desventajas, y Spring Boot no es una excepción. Probablemente pueda resumir las siguientes desventajas.

1. Debe tener una buena comprensión de los principios técnicos básicos de Spring Boot; de lo contrario, será muy difícil una vez que encuentre problemas. Porque todo está integrado y configurado automáticamente. De esta manera, debe estar muy familiarizado con la información de configuración y no es fácil encontrar el problema.

2. Es difícil migrar sin problemas del proyecto Spring original al marco Spring Boot, porque algunas configuraciones XML antiguas no se pueden configurar a través de Java y se requieren archivos XML adicionales, lo que no es perfecto. Para otro ejemplo, antes era un Tomcat independiente y todos los parámetros se configuraban en línea.Si cambia al Tomcat incorporado, encontrará muchos problemas.

Comparadas con las ventajas, estas desventajas no son nada. En resumen, vale la pena intentar explorar Spring Boot para cualquiera de nuestros desarrolladores de Java. 

Supongo que te gusta

Origin blog.csdn.net/f5465245/article/details/123579624
Recomendado
Clasificación