Adotto un'architettura software in cui dispongo di un singolo accesso ai dati nel livello di persistenza.
In effetti, il livello di persistenza è una semplice applicazione java (file JAR) che considero come una dipendenza, grazie al MOM di Maven.
Quindi, quando ho bisogno di accedere al database, chiamo solo alcune classi DAO da qualche servlet o simili.
Poiché sto considerando il multithreading tramite Tomcat, ho sfruttato StringBuffer, ma SonarQube, che rileva che la mia API Back-End è una semplice app Java, consiglia invece di utilizzare StringBuilder.
SonarQube ha ragione o dovrei attenermi a StringBuffer?
Oppure il multi-threading è fuori campo quando si tratta di API?