AS PreparedStatement documentación:
Para ejecutar consultas que actualicen, eliminen o inserten datos en su base de datos, no puede usar executeQuery
... Debe usar:.executeUpdate(query)
Entonces este código (INCORRECTO ):
PreparedStatement updateEXP = conn.prepareStatement("update `user` set `exp` = '666' where `username` = '"+loggedusername+"'");
ResultSet updateEXP_done = updateEXP.executeQuery();
Debe verse como (BUENO ):
Uso correcto
PreparedStatement updateEXP = conn.prepareStatement("update `user` set `exp` = ? ");
updateEXP.setString(1, loggedusername);
ResultSet updateEXP_done = updateEXP.executeUpdate();