Introducción

1

Manejo de Bases de Datos con Spring Data JPA

2

Configuración de Proyectos Spring con Spring Initializer y Gradle

Primeros pasos

3

Conexión de proyectos Spring Boot a MySQL paso a paso

4

Creación de Entidades JPA y Mapeo a Tablas SQL con Hibernate

5

Relaciones JPA: Uso de OneToOne, ManyToOne y OneToMany

6

Consultas SQL Avanzadas con Spring JDBC Template

Spring Data Repositories

7

Consultas Eficientes con List CRUD Repository en Spring

8

Guardar y Actualizar Datos con Spring Data Repositories

9

Borrado de Datos con Spring Data JPA

10

Gestión de Relaciones Lazy vs Eager en JPA con Hibernate

11

Consultas Avanzadas con Query Methods en Spring Data

12

Query Methods: Filtrar Pizzas por Ingrediente Contenido o Excluido

13

Consultas avanzadas con Spring Data JPA: Query Methods y Listas

14

Consulta y Ordenamiento con Paging and Sorting Repository

15

Paginación y Orden en Repositorios Spring Data

16

Ordenamiento Dinámico con Spring Data JPA

Personalización de queries

17

Consultas avanzadas con JPQL en Spring Boot

18

Consultas SQL Nativas en Spring Boot: Listar Órdenes de Clientes

19

Consultas SQL Avanzadas con Proyecciones DTO en Java

20

Actualización de Precios en Base de Datos con Spring Data JPA

21

Transacciones ACID con Spring Data: Uso de @Transactional

Características avanzadas

22

Auditoría de Entidades con Spring Data JPA

23

Auditoría Avanzada de Entidades con Listeners en Spring

24

Store Procedures en Spring Data: Implementación Práctica

Próximos pasos

25

Consultas y transacciones con Spring Data JPA

Configuración de Proyectos Spring con Spring Initializer y Gradle

2/25
Recursos
Transcripción

¿Cómo crear un proyecto con Spring Initializer?

Crear un proyecto con Spring Initializer es una experiencia sencilla e intuitiva que te ahorrará tiempo y esfuerzo. En este tutorial, vamos a ver cómo crear un proyecto de Spring utilizando Gradle y Java en su última versión disponible. Aquí te guiaré por los pasos necesarios para configurar correctamente tu proyecto y sus dependencias.

¿Qué es Spring Initializer?

Spring Initializer es un sitio web oficial proporcionado por Spring que simplifica el proceso de crear proyectos basados en Spring. Al utilizar este sitio, puedes configurar tu proyecto con las dependencias necesarias de forma rápida y eficiente. Todo empieza visitando start.spring.io, donde podrás personalizar tu aplicación desde su interfaz amigable.

¿Cómo configurar un proyecto con Spring Initializer?

  1. Seleccionar Tipo de Proyecto y Lenguaje:

    • En primer lugar, selecciona "Gradle" como tu tipo de proyecto y "Java" como el lenguaje.
  2. Configurar Detalles del Proyecto:

    • Define la versión de Spring Boot; en este caso, usaremos la versión 3.04.
    • Establece el grupo como com.platzi y asigna al artefacto y al nombre del proyecto platzi-pixeria.
    • Ajusta el nombre del paquete a com.platzi.pizza para evitar repeticiones innecesarias.
    • Elige YAR para el empaquetamiento, indicando que es una aplicación autocontenida.
    • Usa Java 17 como el SDK del proyecto.
  3. Incluir Dependencias:

    • Agrega la dependencia Spring Web para crear una API REST.
    • Incluye Spring Data JPA para manejar persistencia de datos con JPA e Hibernate.
    • Añade Lombok para simplificar el código mediante anotaciones.
    • Si vas a utilizar MySQL, incorpora el driver correspondiente.

¿Cómo abrir un proyecto en IntelliJ IDEA?

Una vez que descargues el proyecto en formato ZIP desde Spring Initializer, deberás descomprimirlo y abrirlo en tu entorno de desarrollo integrado (IDE). Aquí te explico cómo hacerlo paso a paso en IntelliJ IDEA:

  1. Descomprimir el Proyecto:

    • Extrae el archivo ZIP descargado para acceder a su contenido.
  2. Abrir en IntelliJ:

    • Selecciona la opción "Open" en IntelliJ IDEA.
    • Navega hasta la carpeta descomprimida y selecciona build.gradle.
    • Asegúrate de abrirlo como un proyecto: "Open as a Project".
  3. Verificar Configuración de la JVM:

    • Comprueba que estás utilizando la versión de Java 17; ve a File > Settings, selecciona Build Execution and Deployment > Build Tools > Gradle, y ajusta la JVM si es necesario.
    • En Module Settings, también asegúrate de aplicar SDK 17.

¿Cómo estructurar el proyecto?

  1. Configura la Estructura del Proyecto:

    • Dentro de src/main/java/com/platzi/pizza, crea los paquetes: persistence, service, y web.controller.
  2. Configura los Paquetes de Persistencia:

    • Dentro de persistence, crea dos paquetes adicionales: entity y repository.

Esta estructura te permitirá organizar tu código de forma clara y eficiente, estableciendo una base sólida para el desarrollo de tu aplicación.

Consejos Prácticos

  • Al trabajar con Lombok, asegúrate de tener el plugin relevante instalado en IntelliJ para aprovechar al máximo sus características.
  • Siempre verifica que tu entorno de desarrollo esté correctamente configurado para evitar errores de compilación relacionados con la versión de Java.
  • Aunque estos pasos se centran en un entorno de desarrollo específico, los principios son aplicables a otras IDEs populares.

Con esta guía, estás listo para comenzar a desarrollar tu aplicación Spring de manera eficiente. Mantente atento en las próximas secciones para aprender cómo conectar tu aplicación y darle vida a tus servicios web.

Aportes 12

Preguntas 7

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

hagan mas contenido de java por favor…

Estructura del proyecto:

  • Gradle, java 17, spring boot 3.X
  • Dependencias
    • Lomnbok
    • Spring data jpa
    • Spring web
    • My sql driver

Recuerden tener seleccionado en la configuración global de intellij como en la del propio proyecto java en su versión 17

Estructura de paquetes

  • com.platizi.pizzeria.controllers
  • com.platizi.pizzeria.services
  • com.platizi.pizzeria.persistence
    • entity
    • repository

Ya era hora de retomar y renovar los cursos de Java, por que los viejos del 2009, estan mandados a recoger.

Programador que se respeta crea la estructura desde la terminal jajaja

mkdir -p {web/controller,persistence/{entity,repository},service}
Hola, por si alguien utiliza el sprint initializer recientemente 2024, no va a encontrar las versiones de springboot que salen en el video. Al interntar abrir el proyecto les va a a dar un error de depdencia no resuelta. Solución Modifiquen el archivo build.gradle del proyecto con los valores del video para lograr una compilación exitosa plugins { id 'java' id 'org.springframework.boot' version '3.0.4' id 'io.spring.dependency-management' version '1.1.0' }

Hasta los momentos el curso va bien saludos al profe

Por fin salió el curso, espero con ansias terminarlo

Ese sourceComp = 17, Es lo mismo que java { toolchain { languageVersion = JavaLanguageVersion.*of*(17) } }

Usando Intelij me daba un error inentendible. Lo abri con VSC y el error era simplemente que tenia que colocar la configuracion de la DB para que levante correctamente .

Execution failed for task ':PizzeriaApplication.main()'.
> Process 'command '/usr/lib/jvm/java-1.21.0-openjdk-amd64/bin/java'' finished with non-zero exit value 1

* Try:
> Run with --stacktrace option to get the stack trace.
> Run with --info or --debug option to get more log output.
> Run with --scan to get full insights.
> Get more help at https://help.gradle.org.
Deprecated Gradle features were used in this build, making it incompatible with Gradle 9.0.
You can use '--warning-mode all' to show the individual deprecation warnings and determine if they come from your own scripts or plugins.
For more on this, please refer to https://docs.gradle.org/8.7/userguide/command_line_interface.html#sec:command_line_warnings in the Gradle documentation.
BUILD FAILED in 2s

Lo solucioné agregando las variables en application.propierties :

spring.datasource.url=jdbc:mysql://localhost:3306/tu_base_de_datos
spring.datasource.username=tu_usuario
spring.datasource.password=tu_contraseña
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

Hasta el momento todo funciona 🙂