public List<Funcionario> select(){
		List<Funcionario> funcionarioLista = new ArrayList<Funcionario>();
		Funcionario funcionario;
		try {
			connection =Conexao.getInstance().obterConexao();
			connection.setAutoCommit(false);
			statement = connection.createStatement();
			statement.executeUpdate("SELECT * from TB_FUNCIONARIO");
			while (resultSet.next()) {
				funcionario = new Funcionario(endDAO.selectById(resultSet.getLong("id_endereco")));
				funcionario.setId(resultSet.getLong("id"));
				funcionario.setPapel(papelDAO.selectById(resultSet.getLong("id_papel")));;
				funcionario.setNome(resultSet.getString("nome"));
				funcionario.setEmail(resultSet.getString("email"));
				funcionario.setTelefone(resultSet.getString("telefone"));
				funcionario.setDataNascimento(resultSet.getDate("data_nasc"));
				funcionario.setCodigo(resultSet.getString("codigo"));
				funcionario.setContaCorrente(resultSet.getString("conta_corrente"));
				//aeroporto.setEndereco(resultSet.getInt("id_endereco"));
				
				funcionarioLista.add(funcionario);
			}
			
		} catch (Exception e) {
			// TODO: handle exception
			try {
				if (connection != null && !connection.isClosed()) {
					connection.rollback();
				}
			} catch (SQLException e2) {
				e2.printStackTrace();
			}
		}finally {
			try {
				if (resultSet != null) {
					resultSet.close();
				}
				if (statement != null) {
					statement.close();
				}
				if (connection != null) {
					connection.close();
				}
			} catch (SQLException e) {
				// Nada a fazer
			}

		}
		return funcionarioLista;
	}