Cifratura e Spring

Come usare le librerie di Spring per cifrare le informazioni.

Spring Data Esempio Pratico

Spring Data permette di semplificare lo stato di persistenza rimuovendo completamente l’implementazione dei DAO dalla nostra applicazione. Per fare ciò, l’interfaccia DAO deve estendere JpaRepository e Spring Data creerà automaticamente un’implementazione dotata dei metodi CRUD più rilevanti per l’accesso ai dati.

Leggi tutto “Spring Data Esempio Pratico”

Swagger: Documentare un Web Services Rest

Swagger è un progetto open source utilizzato per generare la documentazione per microservizi. Fornisce un’interfaccia utente per accedere ai nostri servizi web RESTful tramite browser. Per abilitare Swagger nell’applicazione Spring Boot, è necessario aggiungere le seguenti dipendenze nel pom.xml

<!-- SWAGGER 2 -->
		<dependency>
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger2</artifactId>
			<version>2.9.2</version>
		</dependency>
		<dependency>h
			<groupId>io.springfox</groupId>
			<artifactId>springfox-swagger-ui</artifactId>
			<version>2.9.2</version>
		</dependency>
Leggi tutto “Swagger: Documentare un Web Services Rest”

Spring – Form, Lista di Input

Spring non permette di stampare il contenuto di una lista e collegarlo ad un campo di input.

Un escamotage è usare il tag html <input> al posto di <form:input>:

[html]

<input name=”order.paymentTransactions[0].payerEmail” />

[/html]

dove [0] sarà una variabile che indica la posizione dell’array da stampare.

Non si può usare direttamente il tag di spring

[html]<form:input path=”order.paymentTransactions[0].payerEmail” name=”payerEmail”/>[/html]

perchè verra decodificato in:

[html]<input name=”order.paymentTransactions0.payerEmail” />

[/html]

Di seguito un esempio completo in cui stampiamo e rendiamo modificabili una lista di contatti di persone (contactForm.contacts), associandoli ai rispettivi campi:

[html]

<c:forEach items=”${contactForm.contacts}” var=”contact” varStatus=”status”>
<tr>
<td align=”center”>${status.count}</td>
<td><input name=”contacts[${status.index}].firstname”               value=”${contact.firstname}”/></td>
<td><input name=”contacts[${status.index}].lastname” value=”${contact.lastname}”/></td>
<td><input name=”contacts[${status.index}].email” value=”${contact.email}”/></td>
<td><input name=”contacts[${status.index}].phone” value=”${contact.phone}”/></td>
</tr>
</c:forEach>

[/html]