Ho modificato il metodo così:
codice:
public static void insertMenu(String field) throws SQLException {
PreparedStatement statement = null;
//verifico che l'utente non abbia inserito un campo vuoto
try {
if (field == null || field.isEmpty()) {
JOptionPane.showMessageDialog(null, "Non puoi inserire un menu senza nome!", "", JOptionPane.WARNING_MESSAGE);
return;
}
//inserisco fisicamente nel db il nuovo menu
statement = connection.prepareStatement("INSERT INTO Menu VALUES (NULL, ?)");
statement.setString(1, field);
statement.executeUpdate();
//catturo le eccezioni e chiudo lo statement per liberare risorse
} catch (SQLException e) {
JOptionPane.showMessageDialog(null, "Si è verificato un problema\nnell'inserimento dei dati!", "", JOptionPane.WARNING_MESSAGE);
Logger.getLogger(DBConnection.class.getName()).log(Level.SEVERE, null, e);
} finally {
if (statement != null) {
statement.close();
}
}
}
Però adesso nella classe dove lo chiamo, con questa istruzione:
DBConnection.insertMenu(field);
Mi dice: unreported exception.
Come mai?