Spring: could not extract ResultSet

Mi è capitato oggi di ottenere questo messaggio a fronte di una semplice query su una tabella del database:

could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not extract ResultSet

Dopo qualche tentativo ho verificato che il motivo dell’errore era legato a un disallineamento tra il nome di un campo nel database e il corrispondente nome dichiarato nell’annotazione @Column della entity.

Nel database avevo infatti un campo di nome ruoloaggior, mentre nella classe model corrispondente avevo:

@Column(name="ruoloaggiorauto", nullable=false, length=1)
private String ruoloAggiornamentoAutomatico;

E’ bastato correggere la classe model impostando name="ruoloaggior" per risolvere il problema.

Git reset: eliminare tutte le modifiche successive all’ultima commit

Abbiamo “giocato” con una versione facendo qualche test e vogliamo cancellare tutto e ritornare all’ultima commit? git reset è il comando che fa per noi!

La cosa migliore, ovviamente, sarebbe stata quella di creare un branch; in questo modo avremmo evitato di dover “fare pulizia”, ci sarebbe bastato tornare al ramo principale e cancellare il branch.

Se invece abbiamo lavorato sul ramo principale, vediamo come fare.

Continua a leggere Git reset: eliminare tutte le modifiche successive all’ultima commit

Access denied a MySQL da Spring Boot su server Plesk

Supponete di avere un server Linux su cui risiede la vostra applicazione web e che questo sia gestito da Plesk. Si tratta di una situazione abbastanza comune nel caso in cui abbiate – ad esempio – scritto una vostra applicazione web in PHP per poi installarla su un server in cloud.

Supponete inoltre di aver creato i database con l’interfaccia di Plesk e di aver creato un’utenza del database, ad es. username “app”, ad uso e consumo dell’applicativo e con i corretti permessi.

Tutto in PHP funzionerà senza problemi, ma se tenterete di rilasciare un’app Spring Boot sullo stesso server e di farla accedere allo stesso db potrete ottenere l’errore Access denied for user ‘app’@’127.0.0.1’. Che fare?

Continua a leggere Access denied a MySQL da Spring Boot su server Plesk

Esportare da Excel a TXT UTF-8

Spesso e volentieri i clienti ci fornisco dati da importare nei database sotto forma di file Excel.

Uno dei formati migliori per esportare i dati da Excel, ai fini dell’importazione in un db, è il formato Testo delimitato da tabulazione: è facile da leggere da codice, non contiene odiose virgolette che racchiudono i valori e che vanno tolte, non prevede escaping di caratteri particolari… insomma non male.

Tuttavia se si esporta semplicemente il file da Excel a Testo delimitato da tabulazione si ottiene un file in formato ANSI, mentre al giorno d’oggi i database utilizzano quasi sempre la codifica UTF-8.

Continua a leggere Esportare da Excel a TXT UTF-8

Barcode Code 39: come crearli facilmente

Tutti gli sviluppatori di software gestionali hanno prima o dopo a che fare con i barcode: in questo articolo esaminiamo il Code 39.

I barcode sono immagini monocromatiche che rappresentano codici; ad esempio codici prodotto (li troviamo su tutti gli articoli confezionati al supermercato, come sui libri), codici identificativi (ad es. il codice fiscale riportato sulla nostra tessera sanitaria), ecc.

Esistono diverse tipologie di barcode legate alla codifica utilizzata per tradurre un codice alfanumerico nelle famigerate “barrette”; ciascuna tipologia permette di codificare un numero più o meno ampio di caratteri, possiede o meno un carattere di controllo (check digit), e così via.

Continua a leggere Barcode Code 39: come crearli facilmente