a prima vista dal codice che ho visto non hai caricato il driver mysql.
sostanzialmente la classe DriverManager è un registro di driver jdbc (che tipicamente viene usato per un solo driver e in questo caso mysql, ma tecnicamente puo' essere usata come factory per piu' driver jdbc se per esempio hai multipli datasource).
quando chiami il metodo getConnecion() con al suo interno una url, chiedi a questo particolare registro di scansionare tutti i driver che si sono registrati e restituirti il primo che riesce a collegarsi a quella url (infatti tutte le url jdbc sono del tipo jdbc:tipo_database:etcetcetcetc)
nel tuo caso nn vedo la parte che registra il driver mysql a questa factory, e forse potrebbe essere la causa del tuo problema.
questa parte è in effetti poco intuitiva, ma si basa sul fatto che in java nel 99% dei casi l'esecuzione del codice è lazy, ovvero se non fai riferimento a quella determinata classe niente in essa contenuto viene eseguito.
percio' aver messo nel classpath il driver nn è sufficiente per dire che è tutto ok.
devi eseguire la parte di registrazione che tipicamente è contenuta in una classe ad-hoc che nel caso del driver mysql è la seguente
- Codice: Seleziona tutto
com.mysql.jdbc.Driver
non scendo ulteriormente nel dettagli ma prima di procedere ad ulteriori analisi di problemi prova ad aggiungere questa parte all'inizio del codice che hai postato e vedi se cambia qualcosa
- Codice: Seleziona tutto
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException ex) {
System.out.println("errore caricamento driver mysql");
}
EDIT: altra cosa che nn vedo è l'indicazione nella url relativa alla porta di ascolto di mysql, ma qui la certezza che se nn indicata il driver java usi quella di default non ce l'ho.