Afegir dev tools Spring

Darrera actualització: 15-04-2019

A qui va dirigit

Aquest how-to va dirigit a tots aquells perfils tècnics que tinguin la necessitat d’utilitzar les funcionalitats de les dev tools de Spring proporcionats a la versió 3.4.0 de Canigó.

En aquest how-to es mostrarà com utilitzar la consola web per accedir a la bd h2 d’una aplicació amb Canigó 3.4.0

Introducció dev tools Spring

Amb Spring Boot s’inclou un conjunt addicional d’eines per poder fer que l’experiència del desenvolupament d’aplicacions amb Spring sigui més senzilla. Un dels mòduls que faciliten les funcionalitats de desenvolupament és el mòdul “spring-boot-devtools”

Les funcionalitats més importats que aporta les dev tools de Spring són:

  • Restart automàtic
  • Consola web de consulta d’una bd h2

Afegir dev tools Spring

Per poder utilitzar les dev tools de Spring amb una aplicació amb Canigó 3.4.0 és necessari afegir la següent dependència maven al fitxer pom.xml

<dependency>
		<groupId>org.springframework.boot</groupId>
		<artifactId>spring-boot-devtools</artifactId>
		<optional>true</optional>
	</dependency>

És una bona pràctica afegir la dependència com a “optional” ja que així s’evita que les dev tools s’apliquin transitivament a altres mòduls que utilitzin el projecte

Les dev tools són automàticament deshabilitades quan s’executa el projecte executant “java -jar” o es desplega en classloaders especials considerats com a productius. Per assegurar-se que no s’executen en entorns productius, per cada entorn productiu, és necessari afegir les següents propietats:

spring.devtools.restart.enabled=false
spring.h2.console.enabled=false

Per a més informació sobre les dev tools podeu consultar

Accedir consola web bd h2

Si la nostra aplicació utilitza una bd h2 en entorn de desenvolupament, una vegada afegida la dependència maven, podem accedir a la consola web de les dev tools per a realitzar consultes a la bd h2, accedint a http://localhost:8080/h2-console i omplint el formulari amb la següent informació:

JDBC URL: jdbc:h2:mem:dataSource
User Name: sa
Pasword: <deixar buit>

On obtindrem una consola web de consulta de la bd h2 de l’aplicació com per exemple:

H2 console

Si s’utilitza Spring Security a l’aplicació s’ha de deshabilitar el CSRF i el X-Frame-Options, per això en el nostre fitxer

/src/main/java/cat/gencat/ctti/config/WebSecurityConfig.java

En el mètode configure Afegirem:

		http.csrf().disable();
		http.headers().frameOptions().disable();

Per a més informació sobre la consola web de les dev tools es pot consultar: