Pegar Data do sistema e gravar no banco

Bom dia,

Estou querendo pegar a data do sistema e gravar numa tabela como Date. Com faz isso?

Obrigado.

Pq q vc nao pesquisou cara?
aff…

http://www.guj.com.br/java/22659-converter-javautildate-para-javasqldate

uma explicaçãozinha: new Date (java.util.Date) pega a data atual…

mas para gravar no banco precisa gravar o objeto como java.sql.Date …entao tem que converter :wink:

e no link vc vai ver como q faz isso

Até achei um mas não era esse. Obrigado pelo retorno. Ok, vou ler o tópico. Muito obrigado mesmo.

Você sabe como gravar qualquer coisa no banco de dados? porque com datas o processo é o mesmo.

Sim, to fazendo um teste aqui. Gravou, mas no formato ano/mes/dia.

Vou fazer assim para gravar no dd/mm/aa

SimpleDateFormat dateFormat = new SimpleDateFormat("dd/MM/yyyy");
dateFormat.applyPattern("yyyy-MM-dd");

O formato que vai ser gravado no banco depende do banco, não da sua aplicação.

Como você está persistindo essa data?

estava escrevendo, mas o digao ja falou…

Para capturar a data fiz assim:

 java.util.Date dataUtil = new java.util.Date();  
 java.sql.Date dataSql = new java.sql.Date(dataUtil.getTime()); 

Passo como parâmetro assim:

	parametrosPost.add(new BasicNameValuePair("data",dataSql.toString()));

E tá gravando yyyy/mm/dd

1 curtida

No seu código você ainda não persistiu a data no banco, persistiu?

você está utilizando PreparedStatement? JPA?

To usando httpPost. Gravo no MySql com php.

Fiz assim:


	 SimpleDateFormat dateFormatdataSql = new SimpleDateFormat("dd/MM/yyyy");
	 dateFormat.dataSql("yyyy-MM-dd");

Tá sublinhado no dataSql e dando erro: The method dataSql(String) is undefined for the type DecimalFormat.

ah sim… você vai precisar usar o DateFormat então… um exemplo básico: DateFormat dateFormat = new SimpleDateFormat("dd/MM/yy"); Date date = new Date(); String dataFormatada = dateFormat.format(date);

Obrigado pela dica.

Fui fazer o import do DateFormat, tem dois:

Android.text.format
java.text

Do Date:

java.sql
java.util

é o do java.text

e a date nesse caso é java.util.Date

Obrigado. Pode fazer assim ano?

DateFormat dateFormatada = new SimpleDateFormat("dd/MM/yyyy");

Pode sim, o formato fica a seu critério.

Digao,

Fiz assim e gravou a data zerada:

0000-00-00 00:00:00


 java.util.Date dataUtil = new java.util.Date();  
 java.sql.Date dataSql = new java.sql.Date(dataUtil.getTime()); 
			 
 DateFormat dateFormatada = new SimpleDateFormat("dd/MM/yy");  
 Date date = new Date();  
 String dataFormatada = dateFormatada.format(date); 
 parametrosPost.add(new BasicNameValuePair("data",dataFormatada.toString()));