Olá, pessoal do GUJ!
Bom, estava eu em meus estudos, quando me deparei com uma dúvida…
Digamos que tenho um projeto no qual apliquei a arquitetura MVC.
Tenho uma classe Service, a qual comunica com os Pojos, e comunica também com uma classe Action qualquer.
Daí eu faço uma consulta no banco, retornando List, mas quero passá-la via Map pra camada superior, sem que o Action enxergue o Pojo.
Bom, sem mais enrolações, vai o código aí:
public Map<String, Object> readByExample(Map<String, Object> input) throws Exception {
Pessoa pessoa = new Pessoa();
pessoa.setId(new Long(input.get("id")));
pessoa.setNome(input.get("nome"));
//...
List<Pessoa> pessoas = PessoaDAO.getInstance().readByExample(pessoa);
List<Long> ids = new ArrayList<Long>();
List<String> nomes = new ArrayList<String>();
for (Pessoa p : pessoas) {
ids.add(p.getId());
nomes.add(p.getNome());
//...
}
Map<String, Object> output = new TreeMap<String, Object>();
output.put("ids", ids);
output.put("nomes", nomes);
return output;
}
O que vocês acham? Tem uma boa performance? Alguma sugestão para melhorá-lo?
Abraço a todos!