Olá pessoal, sou super nova aqui no forúm, mas estou com um dúvia muito cruel. Eu coloquei aqui no Java Básico, porque eu acho que é uma dúvida básica mesmo… Vamo lá:
Eu tenho um objeto BEAN que dentre outros atributos tem um Date (util.Date), desse mesmo objeto tenho o DAO e eu uso o setDate pra mandar esse dado pro banco de dados. O problema é que eu tenho um JFormattedTextField para o usuário digitar a data como DD/MM/yyyy. Eu não consigo pegar essa informação do JFTF transformá-la em util.Date e depois mandá-la pro DAO.
Não sei se me expressei bem…
Alguém pode me ajudar?
um objeto java.sql.Date é um objeto java.util.Date
Retirado da API padrão:
package java.sql;
public class Date extends java.util.Date {
se seu problema é criar um java.sql.Date apartir de um java.util.Date vc pode usar o operador new da classe java.sql.Date e passar seu java.util.Date como parametro:
java.util.Date data = new java.util.Date();
java.sql.Date dataSql = new java.sql.Date(data);
se seu problema é converter, vc pode usar SimpleDateFormat.
Olá Felagund, obrigada pela resposta, mas o problema vai um pouco além de transformações. Já que eu preciso fazer isso a partir de dado do JFTF… não sei se você me entendeu, ou eu que não entendi :shock:
Só uma correção:
o java.sql.Date recebe um long como parâmetro e não um java.util.Date
java.util.Date data = new java.util.Date();
java.sql.Date dataSql = new java.sql.Date(data.getTime());
thiago.correa era isso mesmo. Muito obrigada. No caso da transformação era isso mesmo.
Agora, vcs saberiam como eu faço pra preencher o meu JFTF com a data que vem do ResultSet?
Tenta assim:
[code]
public Date getDataFormatted(final String dataSt) throws Exception {
//data eh recebida assim: 26/07/2010
Date data = null;
try {
DateFormat dateFormat = new SimpleDateFormat(“yyyy/MM/dd”);
//transformar em 2010-07-26
String dataTemp = dataSt;
data = dateFormat.parse(dataTemp);
} catch (Exception e) {
e.printStackTrace();
}
return data;
}[/code]
romarcio valew funcionou aqui! Mas eu tentei assim:
public static Date TransformaData(JFormattedTextField objJFTF) throws ParseException{
String strData = objJFTF.getText();
Date objDate = new SimpleDateFormat("yyyy/MM/dd").parse(strData);
return objDate;
}
Obrigada pessoal!
[quote=LarissaNepomuceno]romarcio valew funcionou aqui! Mas eu tentei assim:
public static Date TransformaData(JFormattedTextField objJFTF) throws ParseException{
String strData = objJFTF.getText();
Date objDate = new SimpleDateFormat("yyyy/MM/dd").parse(strData);
return objDate;
}
Obrigada pessoal![/quote]
De nada, quando tiver dúvida posta ai, sem problemas 