Io toglierei qui quattro thread che come ha già detto sottovento hanno vita breve. Piuttosto crea un ExecutorService e passalo alla gui così può usarlo per eseguire dei Runnable contenenti la chiamata al database e la sleep in un thread separato senza bloccare l'interfaccia.
Ti lascio un paio di link alla documentazione per partire
http://docs.oracle.com/javase/7/docs...orService.html
http://docs.oracle.com/javase/7/docs...Executors.html
http://docs.oracle.com/javase/7/docs.../Callable.html