@Override
    public Candidato inserir(IEntidade entidade) throws SQLException {
        if (entidade instanceof Candidato) {
            Candidato candidato = (Candidato) entidade;

            PessoaDao pdao = new PessoaDao();
            pdao.inserir(candidato);

            String sql = "INSERT into candidato ("
                    + "id_pessoa, "
                    + "id_concurso, "
                    + "apto_prova_escrita, "
                    + "apto_prova_didatica, "
                    + "apto_prova_memorial, "
                    + "id_prova_escrita "
                    + ") VALUES (?, ?, ?, ?, ?,?)";
            Connection connection = ConnectionFactory.getConnection();
            PreparedStatement stmt = connection.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
            stmt.setInt(1, candidato.getIdPessoa());
            stmt.setInt(2, candidato.getConcurso().getIdConcurso());
            if (candidato.getAptoProvaEscrita() != null) {
                stmt.setBoolean(3, candidato.getAptoProvaEscrita());
            } else {
                stmt.setString(3, null);
            }
            if (candidato.getAptoProvaDidatica() != null) {
                stmt.setBoolean(4, candidato.getAptoProvaDidatica());
            } else {
                stmt.setString(4, null);
            }
            if (candidato.getAptoProvaMemorial() != null) {
                stmt.setBoolean(5, candidato.getAptoProvaMemorial());
            } else {
                stmt.setString(5, null);
            }
            if (candidato.getProvaEscrita() != null) {
                stmt.setInt(6, candidato.getProvaEscrita().getIdProvaEscrita());
            } else {
                stmt.setString(6, null);
            }

            System.out.println(stmt.toString());
            stmt.executeUpdate();
            ResultSet rs = stmt.getGeneratedKeys();

            if (rs.next()) {
                candidato.setIdCandidato(rs.getInt(1));
                return candidato;
            }
        }
        return null;
    }