Cara, faz assim oh:
PreparedStatement ps = connection.prepareStatement("SELECT * FROM registro WHERE data = ?");
ps.setTimestamp(data);
O comando ps.setTimestamp(data) formata a sua variavel do tipo Timestamp para a configuração correta do teu Banco de Dados, ai tu nao precisa se preocupar com isso!! Mas se isso nao funcionar, o SimpleDateFormat funciona assim:
SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");
System.out.println(df.format(data));
Ou seja, na String pattern que eh recebida pela funcao SimpleDateFormat tu deve passar a configuração correta de como tu quer a formatação!! Olha a documentacao da API do SimpleDateFormat que tu vai ver mais detalhes!
Para ficar do jeito que tu quer eh soh colocar desse jeito aki
new SimpleDateFormat(“yyyy-MM-dd HH:mm:ss”);
Onde:
y = ano, entaum yyyy = 2007
M = mes, entaum MM = 03
d = dia, entaum dd = 22
H = hora no formato 24, entaum HH =20
m = minutos, entaum mm = 30
s = segundos, entaum ss = 00
h = hora no formato 12, entaum hh = 8
Abraço!