Java

Write Once Run Anywhere

Mattepuffo's logo
Creare dati fake in Java con Instancio

Creare dati fake in Java con Instancio

Instancio è un'ottima libreria per Java che ci permette di valorizzare gli oggetti con dati random, in modo da poter testare le nostre applicazioni senza avere dati reali.

Rispetto ad altre librerie è meno facile da usare, ma ci molte possibilità.

Mattepuffo's logo
Usare i virtual threads in Java

Usare i virtual threads in Java

I virtual threads sono una novità di Java per usare la concorrenza.

Ci sono svariate differenze tra i platform threads (quelli "classici" per intenderci) e i virtual threads.

La più importante è che i platform threads sono gestiti dal sistema operativo, in sostanza dal kernel.

Mentre i virtual threads sono gestiti dalla JVM.

Mattepuffo's logo
Usare le FunctionalInterface in Java

Usare le FunctionalInterface in Java

Le FunctionalInterface sono state inseriete già in Java 8, ma non vengono usate molto spesso nei progetti, ma il JDK ne fa largo uso.

In questo articolo vediamo un esempio base su come usarle.

Dovete tenere presente una una interfaccia marcata come FunctionalInterface può avere un solo metodo astratto.

Mattepuffo's logo
Usare HTTPS in Vert.x con SelfSignedCertificate

Usare HTTPS in Vert.x con SelfSignedCertificate

L'API che sto sviluppando in Java con Vert.x girerà in modalità standalone, e sarà contattabile direttamente tramite indirizzo ip.

Ovviamente, il client che gira su HTTPS blocca la chiamata al server, in quanto di default gira su HTTP.

Vediamo come configurare Vert.x per HTTP con SelfSignedCertificate!

Mattepuffo's logo
Connessione a MariaDB con Java e Persism

Connessione a MariaDB con Java e Persism

Persism è un ORM per Java molto leggero, e che è in grado di connettersi a diversi db.

Questo perchè in verità dobbiamo indicare noi a quale db collegarsi e quale driver usare.

Quindi, ad esempio, se usiamo MariaDB o MySQL, dobbiamo anche installare il driver JDBC apposito.

Oltre a questo, Persism ha vari meccanismi di auto configurazione.