0% encontró este documento útil (0 votos)
26 vistas

Spring Boot

Cargado por

ducksalert
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
26 vistas

Spring Boot

Cargado por

ducksalert
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 3

Spring Boot

Spring Boot permite desarrollar aplicaciones java de manera muy simple.

Spring Cloud permite desarrollar aplicaciones para la nube.

Spring Cloud Data Flow permite comunicar de mejor manera aplicaciones que usan
microservicios.

Dependencias Spring útiles:

 Spring Boot DevTools: Permite reiniciar más fácilmente el servidor de aplicaciones


embebido tomcat y también utilizar LiveReload que permite refrescar nuestra
aplicación directamente en el navegador.
 Lombok: Permite reducir código como son los métodos GET y SET dentro una clase
java. Y podemos agregar de una forma automática el uso de Log4j2 a nuestra clase
java.
 Spring Web: Permite crear aplicaciones de tipo REST y también aplicaciones web
usando Spring MVC.
 Thymeleaf: Permite agregar páginas web de manera más simple a nuestras
aplicaciones con Spring Boot (facilita la creación de páginas html).

Un controlador de tipo REST permite enviar información al navegador.

Spring es un contenedor de clases java, y cada clase java es un bean que “vive” en ese
contenedor.

Con la anotación @Slf4j tenemos acceso automáticamente a la variable log.

El fichero de configuración de Spring se llama application.properties y se encuentra dentro


de /src/main/resources

Propiedades de ejemplo:

Thymeleaf usa por defecto archivos html

En la carpeta static de un proyecto Spring se agregan recursos estáticos como pueden ser
imágenes, archivos CSS o JS.

En la carpeta templates se agregan las páginas de thymeleaf (paginas html)

Para poder usar información dinámica en una página html de Thymeleaf, tenemos que
añadir el atributo (xmlns:th="http://www.thymeleaf.org") en la etiqueta html.
Ejemplo:
Con la anotación @Value podemos acceder a las variables del fichero
application.properties, ejemplo:

Con la anotación @Data de lombok, podemos acceder directamente a los métodos get y
set, constructor vacío, métodos toString, equals y hasCode de una clase java sin necesidad
de generarlos.

Con el atributo th:each="persona : ${personas}" nos permite iterar una lista de


objetos, por ejemplo para mostrarlos en una tabla de html. Ejemplo:

Para establecer la conexión en nuestro proyecto Spring con la BBDD, tenemos que
definirlo en el fichero application.properties de la siguiente manera:

CRUD significa Create, Read, Update y Delete

Al añadir la anotación @Transactional en un método que hace un insert, delete o update en


BBDD, Spring realiza automáticamente el commit si todo ha ido bien y en caso contrario se
realiza un rollback.

Los links de los ficheros HTML van con un “@” y las variables con un “$”

Con la anotación @Valid indicamos que el objeto va a llegar validado al método donde lo
usemos y debe de ir acompañado del objeto Errors, ejemplo:

El atributo th:fragment permite reutilizar un fragmento de código html de una página (por
ejemplo para usar el mismo footer definido en una plantilla en todas las paginas de una web).

Cuando añades la dependencia de seguridad de Spring Boot (spring-boot-starter-


security), cuando levantas el servidor tomcat para acceder a la aplicación, te pide iniciar
sesión.
El usuario por defecto siempre es: user y la contraseña es escrita por consola cada vez que
levantas el servidor, ejemplo:

Para habilitar la seguridad web en una aplicación desarrollada con Spring, hay que usar la
anotación @EnableWebSecurity

En Spring, el concepto de autenticación consiste en agregar nuevos usuarios y el concepto de


autorización consiste en dar permisos a las urls de la aplicación

Con la anotación @AuthenticationPrincipal y el objeto User user, podemos saber el


usuario que ha iniciado sesión en la aplicación. Ejemplo:

Con el atributo de Thymeleaf sec:authorize="hasRole('ROLE_ADMIN')" podemos


configurar que un elemento de la pagina HTML solo se muestre para determinados roles.

el objeto GrantedAuthority es el tipo que necesita Spring para utilizar los roles de los usuarios.

También podría gustarte