[Ajuda] Retornando Hora

Galera, boa tarde

estou tentando retornar data e hora do banco de dados para a classe principal, estou usando um ArrayList para retornar todos os dados, pois preciso deles no botão pesquisar, mas na hora de retornar a hora, tá dando dados incompatíveis e não sei como fazer essa parte! To preso aqui!

Vou mandar para vocês o script principal e o script onde to fazendo as operações!

Script Principal:

private void btnPesquisarActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
String placa, hrsaida, modelo ="", cor="", marca="";
String hrEntrada = “”;
placa = txtPlaca.getText();
hrsaida = txtSaida.getText();
Operacoes op = new Operacoes();
ArrayList lista = op.listarSaida(placa);
for(int k = 0; k<lista.size(); k++){
modelo += lista.get(k).getModelo();
cor += lista.get(k).getCor();
marca += lista.get(k).getMarca();
hrEntrada = lista.get(k).getTimestampHrentrada().toString();
}
txtModelo.setText(modelo);
txtCor.setText(cor);
txtMarca.setText(marca);
txtEntrada.setText(hrentrada);
}

Script Operacoes:

public ArrayList listarSaida(String placa)
{
ArrayList lista = new ArrayList();
try{
ps = conexao.prepareStatement(“select Placa, Modelo, Cor, Marca, DataEntrada from Cadastro where Placa = ?”);
ps.setString(1, placa);
rs = ps.executeQuery();
while(rs.next())
{
lista.add(new Carro(rs.getString(“placa”), rs.getString(“modelo”), rs.getString(“cor”), rs.getString(“marca”), rs.getTimestamp(“hrentrada”)));
}
}
catch(SQLException ex)
{
JOptionPane.showMessageDialog(null, “Problema ao pesquisar os dados do carro”+ex.getMessage());
}
finally
{
try{
conexao.close();
}
catch(SQLException ex)
{
JOptionPane.showMessageDialog(null, “Problema ao finalizar a conexao com banco de dados”+ex.getMessage());
}
}
return(lista);
}

Dá erro de Column Not Found

Mas existe a coluna no banco de dados

Primeiro: Use as tags para formatar melhor sua pergunta, fica mais legivel. Tem um tutorial aqui que explica como funciona e para que serve cada tag.
Segundo: Provavelmente seu banco é case-sense, a julgar por essa linha:

select Placa, Modelo, Cor, Marca, DataEntrada from Cadastro where Placa = ?
de sql, porem aqui no ResultSet você esta pegando

while(rs.next()) { lista.add(new Carro(rs.getString("placa"), rs.getString("modelo"), rs.getString("cor"), rs.getString("marca"), rs.getTimestamp("hrentrada"))); }
Ou seja, todos os campos minusculos, enquanto no sql do select eles estão maiusculos, fora que tu esta no sql chamando o campo DataEntrada, e no ResultSet está tentando pegar hrentrada, que onde pode estar o erro.
Primeiro verifica se o sql de select funciona, se funcionar acerta os rs.get, colocando com a mesma declaração.

Perfeito! foi isso mesmo!

Eu to retornando a Hora armazenada no banco de dados, aí como eu faço pra fazer uma diferença dessa hora armazenada e a hora atual?

Porque eu quero fazer o seguinte:

Diferenca(Em Horas) = Hora Atual - Hora Armazenada

Aí através dessa diferença eu vou calcular quanto deve ser pago!

Brigadão pela ajuda e desculpe qualquer coisa.

primeiro pegue a data em milissegundos desde 1 de janeiro de 1970 das duas datas com o getTime() depois é so diminuir que você tara a diferença entre elas em milissegundos

veja a baixo

long diferencaEmMilissegundo = dataAtual.getTime()-dataDoBanco.getTime();

até mais!

Mas a hora armazenada e a hora atual, tão no tipo Timestamp e tá no formato (“dd-MM-yyyy hh:mm:ss”)

Preciso calcular a hora pra saber quanto o cliente vai ter que pagar

com Timestamp eu não sei como fazer o exemplo que dei foi com Date

mais da um olhada na documentação deve ter algo parecido para Timestamp

dei uma espiada na documentação e parece que ha o método getTime que faz exatamente oque o getTime do Date faz

obs: para ter a diferença em horas

diferencaEmHora =diferencaEmMilissegundo/1000/60/60;

até mais!

Fiz exatamente isso e deu certo! Muito obrigado pela ajuda!

Forum show de bola! Aconselho à todos!