Tutorial de Spring – Tutoriales del Marco Principal de Spring

Spring es uno de los frameworks de Java EE más ampliamente utilizados. He escrito mucho sobre el Tutorial de Spring y esta publicación resumen funcionará como un índice para recorrer todos ellos en orden.

Tutorial de Spring

Todos los tutoriales de Spring vienen con proyectos de ejemplo que puedes descargar desde las páginas del tutorial.

Tutoriales Básicos de Spring

El Framework de Spring se basa en dos principios de diseño – Inyección de Dependencias y Programación Orientada a Aspectos. Por favor, revisa los siguientes tutoriales para aprender sobre los conceptos básicos de Spring con ejemplos de implementación.

  1. Framework de Spring Un breve vistazo a la evolución del Framework de Spring, su arquitectura, componentes principales y principios que guían el desarrollo de este increíble framework.
  2. Ejemplo de Inyección de Dependencias en Java Esta publicación proporciona los conceptos básicos de la Inyección de Dependencias y cómo podemos implementar el patrón DI en aplicaciones Java simples. Es un buen punto de partida y luego pasar a la Inyección de Dependencias de Spring.
  3. Inyección de Dependencias de Spring Este tutorial tiene como objetivo proporcionar un ejemplo de inyección de dependencias en el framework Spring con configuración tanto basada en anotaciones como basada en XML. El tutorial también incluye un programa de prueba JUnit para validar la implementación.
  4. Ejemplo de AOP en Spring Este tutorial explica los conceptos básicos de la Programación Orientada a Aspectos como Aspecto, Consejo, Punto de Corte, Punto de Unión, Proxy de AOP y Tejido. El tutorial explica los diferentes tipos de Consejos con un programa simple.
  5. Perfilado de Métodos en AOP de Spring
  6. Contenedor Spring IoC y Ejemplo de Tutorial de Beans Spring Este tutorial tiene como objetivo explicar los conceptos fundamentales del contenedor Spring IoC y los beans Spring con programas de ejemplo. El tutorial explica sobre el Contenedor IoC y sus clases principales y las diferentes formas de crear ApplicationContext. También explica sobre el Bean Spring, los ámbitos de los Beans Spring, diferentes formas de configurar el bean Spring – XML, anotación, basado en Java a través de un proyecto de ejemplo.
  7. Ámbitos de los Beans Spring Los ámbitos de los Beans Spring nos permiten tener un control más granular sobre la creación de instancias de beans.
  8. Ejemplo de Autowiring de Beans Spring El contenedor Spring IoC es inteligente para determinar el bean para inyectar dependencias a través del atributo “autowire” de Spring. Este tutorial explica sobre diferentes tipos de autowiring con un proyecto de ejemplo.
  9. Ciclo de Vida de un Bean de Spring Los Spring Beans son la parte más importante de cualquier aplicación Spring. El ApplicationContext de Spring es responsable de inicializar los Spring Beans definidos en el archivo de configuración de beans de Spring. Este tutorial explica las diferentes formas en las que podemos proporcionar métodos de post-inicialización y pre-destrucción en un bean de Spring: mediante las interfaces InitializingBean/DisposableBean o los atributos init-method/destroy-method. El framework de Spring también soporta las anotaciones @PostConstruct y @PreDestroy para definir métodos de post-inicialización y pre-destrucción. Estas anotaciones forman parte del paquete javax.annotation. También aprenderás sobre las interfaces Spring Aware que puedes utilizar para inyectar objetos de la API Servlet en el bean de Spring.
  10. Spring 5 Spring 5 fue lanzado a finales de 2017. Spring 5 trae una actualización masiva al framework de Spring.
  11. Spring WebFlux Spring WebFlux es el nuevo módulo introducido en Spring 5. Spring WebFlux es el primer paso hacia el modelo de programación reactiva en el framework de Spring.
  12. Spring Data JPA Spring Data JPA forma parte de la familia Spring Data. Spring Data facilita la creación de aplicaciones impulsadas por Spring que utilizan nuevas formas de acceder a los datos, como bases de datos no relacionales, marcos de reducción de mapas, servicios en la nube, así como un soporte avanzado para bases de datos relacionales.

Anotaciones de Spring

  1. Anotaciones de Spring Un vistazo breve a las anotaciones más importantes en el marco de Spring.
  2. Spring @Bean La anotación @Bean de Spring se aplica en un método para especificar que devuelve un bean que será gestionado por el contexto de Spring. La anotación Spring Bean se declara generalmente en métodos de clases de configuración.
  3. Spring @Service La anotación @Service de Spring es una especialización de la anotación @Component. La anotación de servicio de Spring solo se puede aplicar a clases. Se utiliza para marcar la clase como proveedor de servicios.
  4. Spring @Component La anotación Component de Spring se utiliza para denotar una clase como Componente. Significa que el framework de Spring detectará automáticamente estas clases para la inyección de dependencias cuando se utilice la configuración basada en anotaciones y el escaneo del classpath.
  5. Spring @RestController La anotación RestController de Spring es una anotación de conveniencia que está ella misma anotada con @Controller y @ResponseBody. Esta anotación se aplica a una clase para marcarla como controlador de solicitudes.
  6. Spring @Controller La anotación Controller de Spring es una especialización de la anotación @Component. La anotación Controller de Spring se utiliza típicamente en combinación con métodos de controladores anotados basados en la anotación RequestMapping.
  7. Spring @Repository La anotación Repository de Spring se utiliza para indicar que la clase proporciona el mecanismo para operaciones de almacenamiento, recuperación, búsqueda, actualización y eliminación de objetos.
  8. Spring @Configuration La anotación @Configuration de Spring es parte del marco principal de Spring. La anotación de configuración de Spring indica que la clase tiene métodos de definición de @Bean. Así que el contenedor de Spring puede procesar la clase y generar Beans de Spring para ser utilizados en la aplicación.
  9. Spring @Value La anotación @Value de Spring se utiliza para asignar valores predeterminados a variables y argumentos de método. Podemos leer variables de entorno de Spring así como variables del sistema utilizando la anotación @Value.
  10. Spring @PropertySource La anotación @PropertySource de Spring se utiliza para proporcionar un archivo de propiedades al entorno de Spring. Esta anotación se utiliza con clases @Configuration.
  11. Primavera @PostConstruct y @PreDestroy Cuando anotamos un método en un Bean de Spring con la anotación @PostConstruct, se ejecuta después de que el bean de Spring se inicializa. Cuando anotamos un método de un Bean de Spring con la anotación PreDestroy, se llama cuando la instancia del bean se está eliminando del contexto.
  12. Primavera @Async La anotación @Async de Spring nos permite crear métodos asíncronos en Spring. Exploremos @Async en este tutorial sobre el marco de Spring.

Tutoriales de Spring Boot

  1. Tutorial de Spring Boot
  2. Componentes de Spring Boot
  3. Spring Boot @SpringBootApplication, Clase SpringApplication La anotación Spring Boot @SpringBootApplication se utiliza para marcar una clase de configuración que declara uno o más métodos @Bean y también activa la autoconfiguración y el escaneo de componentes. La clase SpringApplication de Spring Boot se utiliza para inicializar y lanzar una aplicación Spring desde un método principal de Java.
  4. Spring Boot REST Este tutorial explica cómo crear servicios web REST utilizando el módulo Spring Boot.
  5. Spring Boot MongoDB Aprenda cómo utilizar MongoDB en una aplicación Spring Boot.
  6. Spring Boot Redis Cache Este artículo explica cómo integrar Redis Cache en una aplicación Spring Boot.
  7. Spring Boot Elasticsearch Este artículo explica cómo integrar Elasticsearch con una aplicación Spring Boot.
  8. Endpoints de Spring Boot Actuator Los endpoints de Spring Boot Actuator nos permiten monitorear e interactuar con nuestra aplicación. Spring Actuator es un submódulo de Spring Boot y proporciona endpoints integrados que podemos habilitar y deshabilitar para nuestra aplicación.
  9. Interfaz Web de Spring Boot Initializr
  10. Ejemplo de CLI de Spring Boot
  11. Spring Boot – No se puede determinar la clase del controlador de base de datos incrustada para el tipo de base de datos NINGUNO
  12. Preguntas de entrevista de Spring Boot

Tutorial de Spring MVC

  1. Tutorial de Spring MVC para principiantes con Spring Tool Suite Los módulos de Spring MVC nos ayudan a crear aplicaciones web basadas en Java. Esta es la primera publicación en la serie de Spring MVC y aprenderás cómo usar Spring Tool Suite (STS) y crear una aplicación web simple utilizando el marco de Spring MVC.
  2. Ejemplo de Spring MVC Este tutorial explica cómo crear una aplicación Spring MVC utilizando Maven y Eclipse IDE, sin utilizar Spring Tool Suite.
  3. Ejemplo de Servicio Web Restful de Spring con JSON El Framework Spring proporciona soporte incorporado para la API Jackson JSON y podemos utilizarlo para crear un servicio web restful que devolverá una respuesta JSON. Este tutorial explica todas las partes diferentes de la aplicación que se requieren para configurar nuestra aplicación para devolver una respuesta JSON e implementar la API Rest.
  4. Spring REST XML y JSON Spring REST admite mensajes de solicitud-respuesta basados tanto en XML como en JSON. Este tutorial explica cómo podemos admitir ambos utilizando configuraciones simples.
  5. Spring RestTemplate Spring RestTemplate proporciona una forma conveniente de probar servicios web RESTful. Podemos usar RestTemplate para probar servicios web restful basados en HTTP, pero no admite el protocolo HTTPS.
  6. Ejemplo de Carga de Archivos en Spring MVC La carga de archivos es una de las tareas comunes de una aplicación web, por eso Spring proporciona soporte incorporado para la carga de archivos mediante la integración de Apache Commons FileUpload API. Este tutorial tiene como objetivo proporcionar una comprensión de cómo se configuran diferentes componentes con un ejemplo de carga de archivos únicos y múltiples.
  7. Ejemplo de Internacionalización y Localización en Spring MVC En cualquier aplicación web con usuarios de todo el mundo, la internacionalización (i18n) o la localización (L10n) son muy importantes para una mejor interacción del usuario. La mayoría de los marcos de aplicaciones web proporcionan formas sencillas de localizar la aplicación según la configuración regional del usuario. Spring también sigue este patrón y brinda un amplio soporte para la internacionalización (i18n) mediante el uso de interceptores de Spring, resolutores de localización y paquetes de recursos para diferentes configuraciones regionales. Este tutorial explica el proceso de i18n y l10n en una aplicación web de Spring a través de un proyecto de ejemplo.
  8. Ejemplo de Validación de Formulario en Spring MVC Cuando aceptamos entradas de usuario en cualquier aplicación web, se vuelve necesario validarlas. Podemos validar la entrada del usuario en el lado del cliente utilizando JavaScript, pero también es necesario validarlas en el lado del servidor para asegurarnos de que estamos procesando datos válidos en caso de que el usuario tenga JavaScript deshabilitado. El Framework de Spring MVC soporta las especificaciones JSR-303 por defecto y todo lo que necesitamos hacer es agregar JSR-303 y sus dependencias de implementación en la aplicación Spring MVC. Spring también proporciona la anotación @Validator y la clase BindingResult a través de las cuales podemos obtener los errores generados por la implementación del validador en el método del controlador encargado de manejar la solicitud. El tutorial proporciona un ejemplo de validación de formulario usando anotaciones y también explica el proceso para crear nuestro propio validador personalizado.
  9. Manejo de Excepciones en Spring MVC Cualquier aplicación web requiere un buen diseño para el manejo de excepciones porque no queremos servir una página generada por el contenedor cuando se produce una excepción no manejada por nuestra aplicación. El Framework de Spring MVC proporciona un enfoque para el manejo robusto de excepciones en las clases Controlador, Manejador de Excepciones Global y a través de la implementación de HandlerExceptionResolver. Consulta el proyecto de ejemplo en el tutorial para aprender más sobre el manejo de excepciones en Spring MVC.
  10. Ejemplo de Interceptores de Spring MVC A veces queremos interceptar la solicitud HTTP y realizar algún procesamiento antes de pasarla a los métodos del controlador. Ahí es donde resultan útiles los Interceptores de Spring MVC. Podemos crear nuestros propios interceptores en Spring ya sea implementando la interfaz org.springframework.web.servlet.HandlerInterceptor o sobrescribiendo la clase abstracta org.springframework.web.servlet.handler.HandlerInterceptorAdapter que proporciona la implementación base de esta interfaz. Consulta el proyecto de ejemplo en el tutorial para aprender más sobre los interceptores de Spring MVC.
  11. Ejemplo de Mapeo de Solicitudes de Spring MVC @RequestMapping es una de las anotaciones más utilizadas en Spring MVC. La anotación org.springframework.web.bind.annotation.RequestMapping se utiliza para mapear solicitudes web en clases de controlador específicas y/o métodos de controlador específicos. @RequestMapping se puede aplicar tanto a la clase del controlador como a los métodos. Este tutorial explica diferentes usos con ejemplos y un programa de prueba.
  12. Administración de Sesiones de Primavera El módulo de Sesión de Primavera proporciona APIs e implementaciones para gestionar la sesión del usuario en una aplicación web. Spring Session desacopla la lógica de gestión de sesiones de la aplicación, lo que la hace más tolerante a fallos. Spring Session consta de los siguientes módulos: Spring Session Core, Spring Session JDBC, Spring Session Data Redis y Spring Session Hazelcast.
  13. Ejemplo de Spring MVC con Gradle

Tutoriales de Spring Batch

  1. Spring Batch Spring Batch nos permite procesar fácilmente un gran número de registros mediante la creación de lotes. Este artículo explica qué es Spring Batch, su arquitectura y cuándo usar una aplicación de Spring Batch.
  2. Ejemplo de Spring Batch Este tutorial explica cómo crear un proyecto de Spring Batch para procesar grandes archivos CSV.

Tutorial de Spring JDBC

La mayoría de las aplicaciones empresariales trabajan con bases de datos relacionales. Por eso, Spring proporciona un amplio soporte para la API JDBC y también ofrece envoltorios para realizar operaciones CRUD en la base de datos.

  1. Spring JDBC y JdbcTemplate CRUD con Ejemplo de DataSource El framework de Spring ofrece una excelente integración con la API JDBC y proporciona la clase de utilidad JdbcTemplate que podemos utilizar para evitar código redundante en la lógica de nuestras operaciones en la base de datos, como la apertura/cierre de la conexión, ResultSet, PreparedStatement, etc. Este tutorial proporciona un ejemplo de operaciones CRUD utilizando la integración de Spring JDBC.
  2. Spring DataSource JNDI con Ejemplo de Tomcat También sabemos que el uso de DataSource con JNDI es la forma preferida de lograr la agrupación de conexiones y obtener beneficios de las implementaciones de contenedores. Este tutorial explica cómo podemos utilizar DataSource definido en el contenedor de Tomcat como un recurso JNDI para obtener la conexión a la base de datos y realizar diferentes operaciones. Esta es la forma preferida de obtener conexiones de base de datos en una aplicación web de Spring porque el contenedor se encarga de gestionar los recursos de la base de datos.
  3. Ejemplo de Gestión de Transacciones de Spring con JDBC La gestión de transacciones es una tarea trivial en cualquier aplicación empresarial. Spring proporciona un amplio soporte para la gestión de transacciones y ayuda a los desarrolladores a centrarse más en la lógica empresarial en lugar de preocuparse por la integridad de los datos. La gestión de transacciones declarativa de Spring es el enfoque preferido para la gestión de transacciones porque es muy fácil de usar y no hay dependencia directa, utiliza AOP e inyección de dependencias.
  4. Spring JdbcTemplate La clase Spring JdbcTemplate es el núcleo del módulo Spring JDBC. Proporciona varios métodos para ejecutar consultas SQL, leer datos del conjunto de resultados, etc.

Tutorial de Spring Hibernate

Spring es uno de los frameworks de Java EE más utilizados y Hibernate es el mejor framework ORM en el mercado. Por eso, Spring proporciona soporte incorporado para Hibernate en el módulo de Spring ORM.

  1. Ejemplo de Integración de Spring Hibernate Este tutorial proporciona detalles completos con un ejemplo para integrar Hibernate con una aplicación independiente de Spring. El ejemplo muestra la integración entre Spring 4 + Hibernate 4 y Spring 4 + Hibernate 3.
  2. Ejemplo de CRUD de Spring MVC Hibernate Spring MVC se puede integrar fácilmente con el marco de trabajo Hibernate. Además, podemos utilizar la gestión de transacciones declarativas de Spring, lo que hace que nuestra aplicación esté libre de código redundante.
  3. Ejemplo de Spring ORM
  4. Spring ORM con Gestión de Transacciones AOP

Tutorial de Spring Security

Spring Security se puede aplicar a cualquier aplicación web Java, funciona como una parte separada de la aplicación y proporciona diferentes formas de autenticación y autorización.

  1. Seguridad de Spring en Aplicaciones Web Servlet Este tutorial explica los conceptos básicos del módulo de seguridad de Spring. También proporciona un ejemplo de autenticación en memoria, basada en DAO y JDBC con un proyecto de ejemplo.
  2. Ejemplo de Seguridad de Spring MVC Si estamos utilizando el framework Spring MVC, aplicar seguridad de Spring es muy fácil porque ya tenemos configuraciones basadas en Spring. Todo lo que necesitamos es conectar las configuraciones relacionadas con la seguridad.
  3. Seguridad de Spring 4 Este artículo explica sobre el módulo de seguridad de Spring introducido en Spring 4.
  4. Seguridad de Spring MVC Este artículo explica cómo utilizar la seguridad de Spring en una aplicación Spring MVC.
  5. Autorización de Acceso Basada en Roles de Spring Security

Tutoriales de Integración de Spring

  1. Ejemplo de Integración de Spring JSF JSF es un framework basado en componentes con un gran énfasis en las interfaces de usuario, mientras que el principio básico de Spring es la inyección de dependencias. Este tutorial explica cómo obtener lo mejor de ambos mediante la integración de JSF con el Framework Spring.
  2. Ejemplo de Integración Primefaces Spring & Hibernate Este es uno de los ejemplos de integración donde hemos explicado cómo integrar PrimeFaces con el framework Spring y Hibernate. Esta es una combinación muy comúnmente utilizada para sacar el máximo provecho de cada uno de los frameworks.
  3. Ejemplo de Integración PrimeFaces Hibernate SpringRoo SpringRoo es una herramienta de software de código abierto que utiliza el concepto de convención sobre configuración para facilitar la producción de aplicaciones de software empresarial basadas en Java de manera dirigida por línea de comandos. Este tutorial explica la integración entre SpringRoo, PrimeFaces y los frameworks de Hibernate.

Mensajería Spring

  1. Spring AMQP
  2. Spring RabbitMQ
  3. Ejemplo de Spring RabbitMQ
  4. Spring ActiveMQ Parte 1
  5. Spring ActiveMQ Parte 2

Preguntas de entrevista de Spring

Si vas a una entrevista de Java EE donde Spring es un requisito, espero que esta publicación te ayude a refrescar tu conocimiento rápidamente. Eso es todo por los tutoriales de Spring por ahora. El marco Spring tiene muchos módulos y estaré publicando sobre ellos en el futuro y seguiré incluyéndolos aquí. Así que te sugiero que marques esta publicación para referencias futuras.

Source:
https://www.digitalocean.com/community/tutorials/spring-tutorial-spring-core-tutorial