0% encontró este documento útil (0 votos)
0 vistas18 páginas

Spring Boot - Java - Parte 1

El documento detalla el proceso de creación de un proyecto de backend en Java utilizando Spring Boot y MySQL, comenzando con la instalación de herramientas necesarias y la creación de un modelo entidad-relación para una tabla de 'Estudiantes'. Se describen los pasos para configurar la base de datos, generar el proyecto en Spring Initializr y establecer la conexión a la base de datos mediante un archivo de configuración. Finalmente, se explica cómo crear la entidad 'Estudiantes' en el proyecto, incluyendo las validaciones y anotaciones necesarias para su correcta implementación.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
0 vistas18 páginas

Spring Boot - Java - Parte 1

El documento detalla el proceso de creación de un proyecto de backend en Java utilizando Spring Boot y MySQL, comenzando con la instalación de herramientas necesarias y la creación de un modelo entidad-relación para una tabla de 'Estudiantes'. Se describen los pasos para configurar la base de datos, generar el proyecto en Spring Initializr y establecer la conexión a la base de datos mediante un archivo de configuración. Finalmente, se explica cómo crear la entidad 'Estudiantes' en el proyecto, incluyendo las validaciones y anotaciones necesarias para su correcta implementación.
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Backend Java.
Para el Inicio deben tener en cuenta todas las tecnologías que están
implicadas:
Tecnologías
Java.
Spring Boot.
MySQL - MySQL Workbench.
JPA.
Lombok.
IntelliJ IDEA Community Edition.

Conceptos:
Modelo entidad relación.
Sintaxis de java.
SQL.
Patrones de Diseño Backend.
Modelo Vista Controlador.
Patrón Abstract Factory.
Expresiones Lambda.
Programación Funcional java.
Modelo Entidad Relación ER.

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Posterior a la Instalación de IntelliJ IDEA Community Edition, y MySQL


Workbench.

Iniciamos creando el modelo entidad relación


Crearemos una tabla: “Estudiantes”, la cual contendrá.

Tabla Estudiantes:
Id – Long.
Nombre – String.
Apellido – String.
Código – Long.
Nota – Double.

Para esto pueden usar [Link] aquí pueden hacer la


diagramación de sus modelos de entidad relación.
Creamos nuestro Modelo:
Diagrama ER Estudiantes

[Link]
ab30de92ed87/edit?viewport_loc=37%2C117%2C1480%2C649%2C0_0&invitation
Id=inv_81302f97-4f00-46ec-839f-be32025aa177

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

En base a esto crearemos nuestro proyecto.


Teniendo en cuenta que usaremos MySQL Workbench, posterior a su instalación,
abrimos el programa para crear el contenedor de nuestra base de datos:
Abrimos nuestro motor de base de datos MySQL.

Procedemos a loguear:

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Procedemos a crear la Base de Datos

Le llamaremos: “notasDB”

Y Le damos Apply.

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Y Le damos Apply, y luego Finish.

Se a creado nuestra base de datos

Teniendo en cuenta el nombre de la base de datos y las credenciales de acceso,


estos son factores importantes para luego conectarnos a ella.

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Para la siguiente etapa, vamos a crear el proyecto en Spring Boot.


Para ello lo crearemos directamente en la página principal del framework.
Nos vamos a Spring Initializr : ([Link]

La configuración del proyecto es la siguiente:


Project:
Maven Project
Lenguaje:
Java
Spring Boot:
2.7.5 (Por defecto versión mas estable)
Group:
[Link]
artefact:
api-notas

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

name:
api-notas
Packaging:
Jar
Java:
11(versión estable)

Dependencies:  Añadimos(ADD – Ctrl+B)


MySQL JDBC and R2DBC driver.
Spring Web
Lombok DEVELOPER TOOLS
Validation I/O
Spring Data JPA SQL

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Posterior le damos Generate, generamos el proyecto.

Descomprimimos y ubicamos donde queremos mantener nuestro proyecto.

Accedemos a la carpeta “api-notas”

Y sobre el espacio en blanco le damos clic derecho y la opción “Open IntelliJ”:

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Podremos visualizar nuestro proyecto.

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Ahora iniciamos la construcción de nuestra conexión, para esto nos vamos


al archivo de properties, el cual renombraremos y cambiaremos la
extensión: “[Link]”

Quedaría:

Procedemos a la Configuración de api-Server-Spring configs:


api:
version: 1.0.0
title: Notas API
basePackage: [Link]
description: Api para ver estudiantes y su nota

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

terms: https://

#Server configurations
server:
servlet:
context-path: /api-notas
port: ${PORT:8080}
error:
include-message: always
include-binding-errors: always

#Spring configs
spring:
jpa:
defer-datasource-initialization: true
[Link]-auto: update
show-sql: true
properties:
hibernate:
format_sql: true
dialect: [Link].MySQL5Dialect
datasource:
url: jdbc:mysql://localhost:3306/notasDB
username: root
password: root
driver-class-name: [Link]

Quedaría:

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Procedemos a crear la entidad que manejara los datos.


Para esto crearemos:
El paquete aplication a nivel del paquete apinotas.

Y en el paquete aplication creamos el paquete de entidad “entities”

Luego creamos la clase que manejara la entidad, una clase concreta llamada
“Estudiantes”:

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Quedaría:

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

Y la clase:

Aquí tendremos en cuenta los campos de la entidad según el modelo ER que creamos
al inicio:

Y usamos Lombok para la validación y usamos la anotación @Entity para indicar que
es una entidad.
Creamos y añadimos las anotaciones pertientes.
@Data
@Entity
@RequiredArgsConstructor
@NoArgsConstructor
@Table(name = "estudiantes")
Además
@Id
@GeneratedValue(strategy = [Link])
private Long id;
@NonNull
@Column(length = 40)
@NotBlank

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

private String nombre;


@NonNull
@Column(length = 50)
@NotBlank
private String apellido;
@NonNull
@Column(length = 30)
@NotBlank
private int codigo;
@NonNull
@Column(length = 2)
@NotBlank
private double nota;

Tendremos en cuenta cada uno de los parámetros que declaramos con las
validaciones pertinentes.
Quedaría de la siguiente manera:
package [Link];

import [Link];
import [Link];
import [Link];
import [Link];

import [Link].*;
import [Link];

@Data
@Entity
@RequiredArgsConstructor
@NoArgsConstructor
@Table(name = "estudiantes")
public class Estudiantes {
@Id
@GeneratedValue(strategy = [Link])
private Long id;
@NonNull

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

@Column(length = 40)
@NotBlank
private String nombre;
@NonNull
@Column(length = 50)
@NotBlank
private String apellido;
@NonNull
@Column(length = 30)
@NotBlank
private int codigo;
@NonNull
@Column(length = 2)
@NotBlank
private double nota;

De esta forma al ejecutarse se crea la tabla con los atributos correspondientes.

Quedaría en la Base de Datos.

@D’DavidGaleanoPuche
ASIGNATURA Tutor

UNIVERSIDAD DE CARTAGENA Programación Orientada a D’ David Galeano Puche


Objetos

@D’DavidGaleanoPuche

También podría gustarte