Como converter de sql.Date para util.Date?

Como faço para converter?
Consigo converte para String para Date(sql) , do banco para String, mas de Date(sql) para Date(util) não consigo.

[quote]Como faço para converter?
Consigo converte para String para Date(sql) , do banco para String, mas de Date(sql) para Date(util) não consigo.[/quote]

Vc está recuperando essa data do banco?

Sim. Pego do banco, e estou tentando converte.

Sim. Pego do banco.

Quando eu pego uma data do banco, converto para string, depois converto para util.Date.

String dataString = rs.getString(1); DateFormat df = DateFormat.getDateInstance(DateFormat.DEFAULT); Date data = df.parse(dataString); Cliente cliente = new Cliente(); cliente.setData(data);

É mais ou menos isso?

Show. Vou testar.
Valeu mesmo. 8)

Com relação a Data, também tenho um problema: consigo converter util.date para o formato default brasileiro, mas ao gravar no banco (sql.Date) fica no formato aaaa-mm-dd.
Já tentei converter o formato (sql.Date) e até agora não consegui.

Também tenho esses problemas.
Procuro pesquisar muito, mas agora vou dar uma olhada na api
Valeu pela sua ajuda. 8)

Mas e aí?!

Deu certo a dica?

Com certeza vai funcionar, mas só vou testar amanhã.
Blz. 8)

Voce pode passar no construtor de um java.util.Date um parametro do tipo long, pegando isso direto de sua variavel java.sql.Date

Exemplinho simples:

private void converterData(){ java.sql.Date dataSql = new java.sql.Date(System.currentTimeMillis()); Date dataConvertidaEmUtil = new Date(dataSql.getTime()); System.out.println(new SimpleDateFormat("dd/MM/yyyy").format(dataConvertidaEmUtil)); }

ToBack,

na verdade voce não precisa converter java.sql.Date para java.util.Date, pois java.sql.Date é uma subclasse de java.util.Date, ou seja sql.Date é um util.Date.

é so simplismente fazer:


java.util.Date date = resultSet.getDate("nome do campo"); 

já funcionaria corretamente.

Abraços

[quote=mezini]ToBack,

na verdade voce não precisa converter java.sql.Date para java.util.Date, pois java.sql.Date é uma subclasse de java.util.Date, ou seja sql.Date é um util.Date.

é so simplismente fazer:


java.util.Date date = resultSet.getDate("nome do campo"); 

já funcionaria corretamente.

Abraços[/quote]

Valeu o toque, menzine… :wink:

Brigadão pessoal.
8) Funcionou…blz.

Olá pessol, eu to iniciando em java ainda,

estou com esse problema, tenho uma classe DAO para inserir dados no banco que pega o código

stmt.setDate(4, (java.sql.Date) new Date(contato.getDataNascimento().getTimeInMillis())); //executa stmt.execute(); stmt.close();

e quando vou na classe para inserir os dados :

[code]Contato contato = new Contato();
contato.setNome(“Adne dos Santos”);
contato.setEmail("adne@red.com");
contato.setEndereco(“R. Flores 0510”);
contato.setDataNascimento(Calendar.getInstance());

	ContatoDAO dao = new ContatoDAO();
	dao.adiciona(contato);
	System.out.println("Gravado");[/code]

da o seguinte erro,

[quote]Exception in thread “main” java.lang.ClassCastException: java.util.Date cannot be cast to java.sql.Date
at dao.ContatoDAO.adiciona(ContatoDAO.java:27)
at teste.TestaInsere.main(TestaInsere.java:19)[/quote]

alguém ai pode dar uma força?
Agradeço desde já :thumbup: