@Override
    public int insert(Object obj) {
        int changedRows = -1;
        
        Connection connection = this.initTransaction();
        if(connection != null){
            changedRows = executeUpdate(createInsertCmd(obj), connection);//insere turma
            Turma turma = (Turma)obj;
            //Se turma foi inserida e há docentes, tenta inserir docentes
            if(changedRows > 0 && turma.getDocentes() != null && turma.getDocentes().size() > 0){
                //insere docentes na ultima turma criada (pois turma não possui um codigo valido)
                changedRows += executeUpdate(createInsertLastTurmaDocenteCmd(turma), connection);
            }
            this.commitTransaction(connection);
        }
        
        return changedRows;
        
    }