Estou estudando pela apostila da caelum FJ-21, e me deparei com o seguinte problema referente a datas.
Contatocontato=newContato();contato.setNome(rs.getString("nome"));contato.setEmail(rs.getString("email"));contato.setEndereco(rs.getString("endereco"));Datedt;// = sdf.parse(this.data);try{Calendarcal=newGregorianCalendar();SimpleDateFormatsdf=newSimpleDateFormat("dd/MM/yyyy");this.data=sdf.format(rs.getDate("dtNascimento"));dt=newDate(sdf.parse(this.data).getTime());cal.setTime(dt);sdf.format(cal.getTime());contato.setDtNascimento(cal);}catch(ParseExceptionex){ex.printStackTrace();}// adicionando o objeto à listacontatos.add(contato);
A minha saida para a data é essa:
Data de Nascimento: Wed Jan 25 00:00:00 BRST 2012
Bem, a minha pergunta é, se consigo formatar essa saída no padrão: “dd/mm/yyyy”?
Já que é para exibir ao usuário, não poderia ser uma String apenas? Se sim como faço para add na lista como string, ou por outra maneira?
Na verdade depois de convertido para esse formato, a data se torna apenas uma String, ou seja, o formato dd/MM/yyy é apenas uma forma de apresentação.
Para lidar com as datas de fato, utilize os metodos da classe Date e só formate quando for apresentá-la
Aldeir
para lidar com datas acho bem melhor trabalhar com a classe Datte do pacote java.util
mas como você está estudando fica a seu carater
Agora que vi que você fez algo parecido, mas com algumas coisas desnecessárias.
Enfim, acho que não entendi o que você quer.
[]'s
Então davidbuzatto, só que queria exibir essa data nessa classe:
packagebr.com.caelum.teste;importjava.util.List;importbr.com.caelum.beans.Contato;importbr.com.caelum.dao.ContatoDAO;publicclassTestaLista{publicstaticvoidmain(String[]args){ContatoDAOdao=newContatoDAO();List<Contato>contatos=dao.getLista();// Impressão das informações dos contatosfor(Contatocontato:contatos){System.out.println("Nome: "+contato.getNome());System.out.println("Email: "+contato.getEmail());System.out.println("Endereço: "+contato.getEndereco());System.out.println("Data de Nascimento: "+contato.getDtNascimento().getTime()+"\n");}}}
Como pode ver eu chamo minha lista da minha classe DAO, queria saber como consigo trazer essa informação sem mexer na minha estrutura, acho que colocar na minha List não tem como, ou posso fazer um metodo separado, algo assim, estou meio perdido na verdade.
Obrigado.
davidbuzatto
Uai, mas é só formatar a data que está vindo no calendário (linha 21).
Não é isso q vc quer?
[]'s
dyegocm
davidbuzatto:
Uai, mas é só formatar a data que está vindo no calendário (linha 21).
Não é isso q vc quer?
[]'s
olá davidbuzatto, desculpa responder só agora. Bem era isso mesmo, foi falta de atenção, pois estava focando na idéia de add na lista e na minha classe de teste carregar já formatada. Bem preciso prestar mais atenção, mas muito obrigado pela resposta e esclarecimento!