¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
¡Acceso ilimitado 24/7 a todos nuestros libros y vídeos! Descubra la Biblioteca Online ENI. Pulse aquí
  1. Libros
  2. Java Spring
  3. Aplicación Spring Angular
Extrait - Java Spring La base técnica de las aplicaciones Jakarta EE
Extractos del libro
Java Spring La base técnica de las aplicaciones Jakarta EE Volver a la página de compra del libro

Aplicación Spring Angular

Introducción

Angular se utiliza cada vez más para la parte front de aplicaciones, algunas veces con ayuda de componentes ReactJS o VueJS, en lugar de o en sustitución de las páginas JSP o JSF. Las tecnologías de representación visual de servidores basadas en plantillas como JSF o JSP prácticamente ya no se utilizan para crear nuevas aplicaciones.

Empezar con Angular es complejo. Para entender cómo funciona, lo ideal para este capítulo es probar los ejemplos al mismo tiempo que se lee la teoría. Si desea dominar este framework, puede consultar el libro Angular - Desarrolle sus aplicaciones web con el framework JavaScript de Google, de Daniel DJORDJEVIC, Sébastien OLLIVIER y William KLEIN, publicado por Ediciones ENI.

Este capítulo se ilustra con dos pequeños proyectos. Un proyecto Front en Angular y uno back en Spring Boot.

La parte front es estática a nivel de archivos y, por lo tanto, se puede desplegar directamente en los front-ends Web (Apache, Nginx, etc.).

El ejemplo es deliberadamente sencillo para ilustrar los aspectos principales. Para una aplicación completa, puede crear y estudiar fácilmente ejemplos con jHipster.

El ejemplo utiliza Java 8, NodeJS y Angular CLI.

La parte backend

La parte backend es una aplicación sencilla que expone una API REST.

1. Generación de un backend

Vamos a crear un backend clásico con Spring Initializr (https://start.spring.io/):

Metadatos del proyecto:

Parámetro

Utilidad

type

maven/java/Spring Boot 2.5.12

group

fr.eni.spring5.angular

artefact

fr-eni-spring5-backend

Description

Proyecto ejemplo Angular

Los módulos Spring del proyecto:

Módulo

Utilidad

DevTools

Facilitar la recarga del servidor en caso de recompilación

Lombok

Para simplificar el código

H2

Para la base de datos

JPA

Para la capa de persistencia

Rest Repositories

Para exponer los servicios REST

Web

Tener una aplicación web

Rest Repositories HAL Browser

Para ver datos en un explorador

Una vez que se genera el proyecto, es posible arrancar el servidor inicial con el comando mvn spring-boot:run.

La página del navegador HAL se muestra en http://localhost:8080/ browser/index.html#/.

Vamos a crear los paquetes en fr.eni.spring5.angular.backend:

Paquete

Utilidad

domain

Objetos de dominio JPA

repositories

DAO para acceder a objetos de dominio

controllers

Controladores Spring MVC

config

Las clases de configuración Spring

util

Clases de utilidades

Vamos a crear una primera clase de dominio:

Cuenta.java

@Data 
@NoArgsConstructor 
@EqualsAndHashCode(exclude={"id"}) 
@Entity 
public class Cuenta { 
  @Id 
  @GeneratedValue 
  private Long id; 
  private Integer...

La parte frontend

La parte frontend es relativamente genérica e independiente de la parte backend.

Para el frontend, utilizamos las herramientas Angular CLI que simplifican nuestro desarrollo, usando la línea de comandos.

Asumiremos que las siguientes herramientas ya están instaladas:

Herramientas

Sitio de referencia para la instalación

Node.js

https://nodejs.org/en/

yarn

https://yarnpkg.com/en/

1. Angular CLI

Angular CLI es una suite de herramientas en línea de comandos, que ayuda a crear y modificar aplicaciones Angular.

A continuación, se muestra una tabla que enumera los comandos:

Comando

Utilidad

ng new

Crear una nueva aplicación.

ng serve

Iniciar el servidor.

ng generate

Generar un componente, directiva, ruta, pipe o servicio.

ng lint

Lint el código de la aplicación con tslint.

ng test

Ejecutar las pruebas unitarias.

ng e2e

Ejecutar las pruebas end to end.

ng build

Construir la aplicación.

2. Creación del proyecto inicial

Instalar Angular CLI:

npm install -g @angular/cli 

Crear el proyecto Angular:

ng new miApli --directory. 

La descarga de los archivos se inicia en el directorio actual.

3. Inicio de la aplicación

ng serve 

La aplicación se inicia y es visible en http://localhost:4200/

Es posible terminar la ejecución con la combinación de teclas [Ctrl] C.

Cree un componente CuentaListComponent y otro CuentaService con el siguiente comando:

ng generate component cuenta-list 
  create src/app/cuenta-list/cuenta-list.component.css (0 bytes) 
  create src/app/cuenta-list/cuenta-list.component.html...

Puntos clave

  • Angular es simple y accesible para desarrolladores de Java.

  • El enlace Spring y Angular se realiza a través de la API REST.

  • Las aplicaciones SPA (Angular, ReactJS, etc.) han reemplazado masivamente a las aplicaciones JSP y JSF, y Java y Spring se centrarán en el backend.