Antes de empezar

1

Pasos para aprender Java Spring

2

Instalaci贸n de ambiente de desarrollo: Windows

3

驴Java sigue siendo gratuito?

4

Instalaci贸n de ambiente de desarrollo: Linux Ubuntu

5

Instalaci贸n de ambiente de desarrollo: macOS

Introducci贸n a Spring boot

6

驴Qu茅 es y qu茅 usaremos de Spring?

7

Conocer qu茅 es una aplicaci贸n autocontenida

8

Crear nuestra aplicaci贸n con Spring Initializr

9

Hola mundo con Spring Boot

10

Configurar Spring Boot

11

Crear la estructura del proyecto

Spring Data

12

驴Qu茅 es JPA?

13

Conocer qu茅 es Spring Data

14

Conectar la base de datos a nuestra aplicaci贸n

15

Mapear las tablas como clases

16

Crear Entity cuando su clave primaria es compuesta

17

Mapear relaciones entre clases

18

Usar la interface CrudRepository

19

Query Methods

Construyendo nuestra API

20

Implementar la anotaci贸n @Repository

21

驴Qu茅 es el patr贸n Data Mapper y qu茅 resuelve?

22

Orientar nuestra API al dominio con MapStruct

23

Orientar nuestro repositorio a t茅rminos del dominio

24

Inyecci贸n de dependencias

25

Implementar la anotaci贸n @Service

26

Implementar la anotaci贸n @RestController

27

Exponer nuestra API

Mejorando nuestra API

28

Controlar las respuestas HTTP

29

Crear el dominio de compras

30

Mapear el dominio de compras

31

Crear el repositorio de compras

32

Probando nuestros servicios de compras

33

Documentar nuestra API con Swagger

Spring Security

34

Configurar la seguridad de nuestra API con Spring Security

35

Generar un JWT

36

Autenticaci贸n con JWT

37

Autorizaci贸n con JWT

Despliegue de nuestra aplicaci贸n

38

Desplegar nuestra API desde la ventana de comandos

39

Desplegar nuestra base de datos con Heroku

40

Desplegar nuestra API con Heroku

41

Conclusiones y despedida del curso

No tienes acceso a esta clase

隆Contin煤a aprendiendo! 脷nete y comienza a potenciar tu carrera

Curso de Java Spring

Curso de Java Spring

Alejandro Ram铆rez

Alejandro Ram铆rez

Crear nuestra aplicaci贸n con Spring Initializr

8/41
Recursos

Aportes 43

Preguntas 19

Ordenar por:

驴Quieres ver m谩s aportes, preguntas y respuestas de la comunidad?

o inicia sesi贸n.

Me gusta como lo explica y lo va haciendo paso a paso, me motiva mucho, por ahora me est谩 gustando.

Motivado con el curso e interesante el recurso start.spring.io

Hola a todos, en este link lo hacen como lo explica el profesor y tambien como lo puedes hacer desde INTELIJ IDEA.
https://www.adictosaltrabajo.com/2016/07/29/arranca-con-spring-initializr/

Qu茅 es Spring Initializr?

https://start.spring.io/

  • Sitio oficial para generar un proyecto de Spring Boot
  • En poco tiempo y a nuestra medida
  • Con todo lo que necesitamos para empezar

Project:

  • Los projectos Maven gestionan las dependencias con archivos XML

  • Los archivos Gradle son escritos en Groovy y permite crear tareas que se pueden ejecutar al momento de hacer despliegue o integraci贸n continua

  • Utilizar la version estable de spring boot y llenar los metadatos

    • Spring Web: permite genera APIs rest utilizando Apache Tomcat como servidor por defecto
    • build.gradle: Es donde etsta escrita toda la configuraci贸n del proyecto (plugins, version de Java, dependencias, software para pruebas etc.)
    • Carpeta gradle: Archivos necesarios para que gradle funcione
    • @SpringBootApplication: indica la clase que gestiona la aplicaci贸n

Tambi茅n se puede crear el proyecto desde el IDE

Intellij
Eclipse

Chicos, para que no tengan problemas con la clase 31, descarguen el proyecto con una versi贸n inferior a la 3 de springboot, para la fecha en que escribo este comentario, existe la versi贸n 3.0 y como secundaria estable la 2.7.6

El porqu茅 se debe a que la versi贸n 3 de Spring Boot incorpora Jakarta en vez de Javax en sus Importaciones de persistencia, durante la clase 31, estar谩n implementando Swagger, y las importaciones que usa el Instructor a煤n no tienen una versi贸n adaptada a Jakarta por lo que sencillamente no les va a funcionar.

Ah贸rrense dolores de cabeza, y no se vayan por la 煤ltima versi贸n de Spring Boot, en el momento que haya actualizaciones importantes en la forma de trabajar de Spring lo m谩s seguro es que actualicen este curso o creen uno nuevo

**
Mi configuraci贸n:
**

Enlace ac谩

  • Maven
  • Spring Web
  • Spring Security
  • Spring Data JPA
  • H2 Database
  • Lombok
  • Spring Boot DevTools
  • Validation

De momento todo marcha perfecto!

Java me parece un lenguaje magn铆fico, el unico recelo que le tengo es que la comunidad me da a que le encanta quedarse en cosas 鈥渧iejitas鈥 (contratio a comunidades como la de Python y JavaScript), como por ejemplo que el uso de XML con Maven sigue siendo m谩s popular que Gradle. Qu茅 bueno que este profesor tiene la mente abierta y nos har谩 utilizar Gradle!!

Bueno鈥hora si鈥 a programar 鈥 馃槂

Solo un detalle, se menciona que Java 8 quiza puede ser obsoleto pero sin embargo el OpenJdk 8 tiene m谩s soporte que el OpenJdk 11.

Recomiendo agregar la dependencia de 鈥淪pring Boot DevTools鈥 es un gran plus

No s茅 si en la versi贸n Community se pueda, pero en IntelliJ Ultimate se puede crear el proyecto desde el mismo IDE

yo uso spring tool suite 4

M谩s acerca de los metadatos del proyecto:

Project Metadata: It contains information related to the project, such as Group, Artifact, etc. Group denotes the package name; Artifact denotes the Application name. The default Group name is com.example, and the default Artifact name is demo.

Fuente: JavaTpoint-Spring Initializr

Spring Initializr, permite crear nuestra aplicacion agregando las dependencias que necesitamos para nuestro proyecto.
/start.spring.io
Maven gestiona las dependencias con archivos xml, Gradle esta escrito con Gloovy.
la version estable es la 2.3.1.
version de Java 11.
dependencias a incluir: spring web

SIGAMOS AVANZANDO ESTA BUENO EL CURSO

la configuraci贸n que hemos creado en Spring Initializr la podemos compartir con el boton de Share. La configuraci贸n que se comparta, puede ser utilizada para compartir a otros miembros del equipo.

Aqui comparto mi configuraci贸n por si a alguien le sirve. Les abrira una p谩gina con los datos cargados.

Saludos.

Configuracion

La explicaci贸n es excelente

Continuemos鈥

super la explicaci贸n gracias

vamos paso a paso.

aggg que rabia que este curso sea tan antiguo pondre todo en la version mas estable y punto

exelente clase

Solo quiero detallar el peque帽o comentario de la versi贸n 8 es m谩s obsoleta, pero por lejos sigue siendo la versi贸n m谩s usada al d铆a de hoy jaja

Me gustar铆a que todos los cursos usen dark theme

Actualmente estoy usando Java 17 y Spring Boot 2.7.3 sin ning煤n problema.

Excelente clase super bien explicada y me motiva por que he visto y leido un poco acerca de groovy, de grails y de spring y todo lo estoy viendo aqui. Felicitaciones

Explica todo detalladamente, me gusta el curso!

En caso de que alguien tenga la versi贸n Ultimate de IntelliJ, puede acceder directamente desde este a sprint initializr para crear y configurar el proyecto de sprint.

Esto tambi茅n es pregunta
Es realmente necesario abrir el projecto en IntelliJ desde el archivo build.gradle?
En mi caso con solo arrastrar la carpeta al ejecutable de IntelliJ funcion贸

(varias formas de abrir el mismo proyecto)

Maven: Archivos XML
Gradle: Groovy (CI, CD, Task | Pipelines)

Hola a todos! Si tienen problemas para escuchar el audio a partir del minuto 5:28 de este video, en mi caso lo pude solucionar desactivando el 鈥淎dBlock鈥.

jajaja el 8 obsoleto jajaja

Tambi茅n se puede trabajar con el IDE de Spring Tools, basado en eclipse https://spring.io/tools

este curso lo sacaron hace poco??

Que tan importante es no cambiar la versi贸n durante el desarrollo?

Genial !! La estructura del proyecto me recuerda mucho a la estructura inicial de un proyecto creado desde Android Studio 馃槂

creaci贸n de proyecto:

Excelente explicaci贸n, es clara y precisa.

Alejandro Ram铆rez suger铆a que la versi贸n estable al momento de la creaci贸n del video era 2.3.1, a la fecha de hoy 02/01/2021, 驴Cu谩l es la versi贸n de Spring Boot estable o recomendada para este tipo de proyectos autocontenidos?
2.4.1 o 2.3.7 ?

es forzoso utilizar spring initializr?

donde esta esa opcion