@Override
	public void save(IEmailKontakt emailKontakt) {
		System.out.println("Save dataset...");
		Connection con = null;
		try {
			con = initDBConnection();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		ResultSet rs = null;
		PreparedStatement ps = null;
		try {
			con.setAutoCommit(false);
			if (emailKontakt.getId() < 0) {
				ps = con.prepareStatement("INSERT INTO Kontakt (Vorname, Nachname, Email) VALUES(?, ?, ?)");
				ps.setString(1, emailKontakt.getVorname());
				ps.setString(2, emailKontakt.getNachname());
				ps.setString(3, emailKontakt.getEmail());
				ps.executeUpdate();
				con.commit();
				rs = ps.getGeneratedKeys();
				((EmailKontakt) emailKontakt).setId(rs.getInt(1));
				rs.close();
			} else {
				ps = con.prepareStatement("UPDATE Kontakt SET Vorname = ?, Nachname = ?, Email = ? WHERE KontaktId = ?");
				ps.setString(1, emailKontakt.getVorname());
				ps.setString(2, emailKontakt.getNachname());
				ps.setString(3, emailKontakt.getEmail());
				ps.setInt(4, emailKontakt.getId());
				ps.executeUpdate();
				con.commit();
			}
		} catch (SQLException e) {
			try {
				con.rollback();
			} catch (SQLException e1) {
				e1.printStackTrace();
			}
			e.printStackTrace();
		} finally {
			try {
				ps.close();
				con.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
		}
	}