Buongiorno a tutti.
Sto facendo un programmino che servirà a me per gestire il mio blog che parla di cinema. Questo piccolo programma ha una schermata introduttiva che mi chiede se voglio aggiungere un film, cancellarlo o visualizzare tutti i film nella tabella. La tabella viene creata in base all'anno e il JTextField tfAnnoVisione indica in che anno ho visto un determinato film (che non è necessariamente quello di uscita al cinema).

La form chiede i seguenti dati: AnnoVisione - anno in cui ho visto il film
Titolo
Regista
Genere
Anno - Anno effettivo di pubblicazione
Voto
e sono tutte String

Sia la funzione di creazione della tabella sia la cancellazione - che leggono da un solo JTextField - (la cancellazione l'ho provata inserendo manualmente tramite SQL e poi cancellando dal mio programma) funzionano bene, mentre la funzione di aggiunta di un film che, prese le informazioni nei JTextField, mi dovrebbe creare un oggetto Film con i relativi attributi, non funziona. Non capisco se non riesce ad inserire nel database o se proprio mi crea un oggetto che ha i campi a NULL.

Vi posto qualche frammento del codice. Talascio tutta la trafila di creazione della form con Swing e passo direttamente all'ActionListener del bottone "Submit" che è appunto quello che dovrebbe farmi l'aggiunta. Quando clicco su submit il frame di appoggio per la form si chiude in automatico per mia scelta.

codice:
this.bSubmit = new JButton ("Submit");		gbc.gridx = 1;
		gbc.gridy = 6;
		this.add(this.bSubmit, gbc);
		this.bSubmit.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e){
				Sql add = new Sql();
				try {
					add.aggiungiFilm(tfAnnoVisione.getText(), tfTitolo.getText(), tfRegista.getText(), tfGenere.getText(), tfAnno.getText(), tfVoto.getText());
				} catch (SQLException e1) {}
				frame.setVisible(false);
			}
		})
Mentre qui sotto il codice che manipola l'SQL con la funzione aggiungiFilm

codice:
private static final String add1 = "INSERT INTO Film"; 	private static final String add2 = " (Titolo, Regista, Genere, Anno, Voto) VALUES (?,?,?,?,?)";

public void aggiungiFilm(String annoVisione, Film film) throws SQLException{		ConnessioneDB conDB = new ConnessioneDB();
		Connection con = null;
		PreparedStatement stmt = null;
		try{
			con = DriverManager.getConnection(conDB.getUrl(), conDB.getUsername(), conDB.getPassword());
			String sql = add1 + annoVisione + add2;
			stmt = con.prepareStatement(sql);
			stmt.setString(1, film.getTitolo());
			stmt.setString(2, film.getRegista());
			stmt.setString(3, film.getGenere());
			stmt.setString(3, film.getAnno());
			stmt.setString(4, film.getVoto());
			stmt.executeUpdate();
		} finally {
			if (stmt != null){
				stmt.close();
			}
			if (con != null){
				con.close();
			}
		}
	}

Ringrazio in anticipo per un eventuale aiuto!