Formato de data

Pessoal, é o seguinte preciso pegar a data atual para gravar num campo do BD, pois bem para isso estou tentanto utilizar um GregorianCalendar,
assim:

GregorianCalendar calendario = new GregorianCalendar();

depois para pegar a data tentei fazer assim:

System.out.println(calendario.getTime());

usei o System.out.println apenas para ver o que estava retornando, na verdade o que quero é jogar num TextField, acontece que ele retorna a data desta forma:

Wed Jun 02 17:22:02 BRT 2004

mas eu preciso dela no formato dd/mm/aaaa alguém poderia me dizer como fazer ??

[]s,

 Fabrício.

PS: há um tempo atrás eu tinha postado um tópico a esse respeito e o ABorges me indicou dois links no site da SUN, um sobre o GregorianCalendar e outra sobre o SimpleDateFormat, confesso que olhei mas não me ajudou muito, por isso estou aqui novamente.

Realmente, vc pode usar o SimpleDateFormat, faça o seguinte:

SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
System.out.println(formatter.format(calendario.getTime()));

Entretanto se vc está tentando grava no BD o melhor seria usar bind parameters ao invés de mandar o formato da data do banco diretamente no sql!!!

Fallow

[quote=“TedLoprao”]Realmente, vc pode usar o SimpleDateFormat, faça o seguinte:

SimpleDateFormat formatter = new SimpleDateFormat("dd/MM/yyyy");
System.out.println(formatter.format(calendario.getTime()));

Entretanto se vc está tentando grava no BD o melhor seria usar bind parameters ao invés de mandar o formato da data do banco diretamente no sql!!!

Fallow[/quote]

Aí Ted valeu a força, só mais uma dúvida, como assim bind parameters ??

:shock: :shock:

Hmm, o q q vc tá usando para persistencia??? JDBC, Hibernate, etc???

Se for JDBC, por exemplo vc pode usar um PreparedStatement, como no código tirado direto da API do Java:

   PreparedStatement pstmt = con.prepareStatement("UPDATE EMPLOYEES
                                     SET SALARY = ? WHERE ID = ?");
   pstmt.setBigDecimal(1, 153833.00)
   pstmt.setInt(2, 110592)

Os ? são bind parameters…

Se fosse uma data, vc usaria, por exemplo, pstmt.setDate(1, calendario.getTime())…

Ajudou???

[quote=“TedLoprao”]Hmm, o q q vc tá usando para persistencia??? JDBC, Hibernate, etc???

Se for JDBC, por exemplo vc pode usar um PreparedStatement, como no código tirado direto da API do Java:

   PreparedStatement pstmt = con.prepareStatement("UPDATE EMPLOYEES
                                     SET SALARY = ? WHERE ID = ?");
   pstmt.setBigDecimal(1, 153833.00)
   pstmt.setInt(2, 110592)

Os ? são bind parameters…

Se fosse uma data, vc usaria, por exemplo, pstmt.setDate(1, calendario.getTime())…

Ajudou???[/quote]

Estou usando JDBC, agora saquei, brigadão pela ajuda.