[AJUDA] Pegando informação de Horário

14 respostas
J

Boa tarde galera,

estou fazendo um projeto no netBeans em JAVA com conexão com banco de dados, e consiste em um programa de Estacionamento, no entanto, eu preciso de uma dica para pegar o horário de entrada/saída e jogar para o banco de dados. Estou fazendo pelo PreparedStatement.

Por exemplo, para mandar a informção de qual modelo é o carro:

ps.setString(1, modelo);

Isso eu faço sussa, mas não sei como pegar a informação do horário no campo de texto e mandar para o banco de dados.

Ajudem-me por favor.

Desde já agradeço!

14 Respostas

douglaskd
String dataStr = campoTXTdata.getText();

SimpleDateFormat df = new SimpleDateFormat("dd/MM/yyyy");  

java.util.Date dataUtil = df.parse(dataStr);  

ps.setDate(2, dataUtil);

mais ou menos isso

J

Mas eu não quero dia/mes/ano, e sim horas/minutos para o horário de entrada do veículo! Isso que vc me passou faz isso?

Agradeço pela resposta!

douglaskd

nossa vacilei!

troca la por: “hh:mm”

mais ai, se quando vc gera a entrada ele pega a hora do sistema vc ao envés de pegar do campo txthora pode usar o objeto: new Date()
ele pega a data atual ai é só convertei e mandar pro banco.

J

entendi!

ainda não testei aqui!

mas pra completar, eu quero mostrar pro usuário numa Campo de Texto(TxtEntrada) a hora atual.

aí como faço: txtEntrada.setText(new Date()); ??

tentei fazer isso mas não vai, já adicionei os import’s e dá Cannot find simbol

Desculpe qualquer noobisse! mas eu ainda sou novo nisso!

Obrigado.

DeGuedes

cara eu uso o TIME ou invez do date

txtentrada.setText(new Time(System.currenttimemillis))

*ps: nao sei se escrevi certo , mas é mais ou menos isso…

com isso vc retorna a hora atual : 20:43:55

:wink:

J

DeGuedes, nao deu certo isso aí não! Não to conseguindo colocar a hora atual no campo de texto

DeGuedes

Qual erro que da???
eu fiz aqui e deu certo…

new Time(System.currentTimeMillis())

resultou

14:03:35

J

Mas quando eu vou colocar no campo de texto:

txtEntrada.setText(new Time(System.currentTimeMillis()));

dá esse erro:

setText(java.lang.String) in javax.swing.text.JTextComponent cannot be applied to (java.sql.Time)
txtEntrada.setText(new Time(System.currentTimeMillis()));

já dei o import pro Time e não vai não!

InSeOfKn

pra colocar no JTextField tem que ser uma String

por isso crie uma Objeto do tibo Date para obter a hora do sistema
crie um SimpleDateFormat com o formato desejado
formate o Objeto Date com o SimpleDateFormat com o format que retorna uma string
agora sim você pode colocar no JTextField

olhe o código abaixo

Date horario = new Date(); SimpleDateFormat df = new SimpleDateFormat("hh:mm"); txtEntrada.setText(df.format(horario));

até mais!

J

Ahhh! Brigadãoooo

J

Antes de fechar esse tópico galera, como que faço pra fazer o cálculo de horário?

por exemplo:

diferença = HoraSaída - HoraEntrada

Pra eu saber qual valor o cliente vai ter que pagar!

Agradeço à todos ae que responderam no tópico e vlw pela paciência.

InSeOfKn

Se você esta trabalhando com objetos Dade pode fazer assim:

long diferenca = HoraSaida.getTime() - HoraEntrada;

diferenca sera um long que guardara a diferença em milissegundos da hora de saída com a hora de entrada
se quiser em segundos

double difSeg = diferenca/1000;

em minutos

double difMin = diferenca/1000/60;

em horas

double difHoras = diferenca/1000/60/60;

até mais!

J

galera, seguinte, fiz tudo certinho aqui!

mas na hora de dar o “ps.setDate(5, hrentrada);” dá erro de Cannot Find Simbol! Segue ae o script!

public void inserirEntrada(String placa, String cor, String modelo, String marca, String entrada)

{

SimpleDateFormat df = new SimpleDateFormat(hh:mm);

java.util.Date hrentrada = df.parse(entrada);

try{

ps = conexao.prepareStatement(insert into Cadastro(Placa, Cor, Modelo, Marca, DataEntrada values(?,?,?,?,?);

ps.setString(1, placa);

ps.setString(2, cor);

ps.setString(3, modelo);

ps.setString(4, marca);

ps.setDate(5, hrentrada);

ps.executeUpdate();

}

To mandando da janela gráfica pra uma classe java por parametro! lá no código da janela gráfica tá assim, segue o script:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {                                         
    // TODO add your handling code here:
    String placa, cor, modelo, marca;
    placa = txtPlaca.getText();
    cor = txtCor.getText();
    modelo = txtModelo.getText();
    marca = txtMarca.getText();
    String entrada = txtEntrada.getText();        
    Operacoes op = new Operacoes();

    op.inserirEntrada(placa, cor, modelo, marca, entrada);
    JOptionPane.showMessageDialog(null, "Dados Salvos com Sucesso");
    limparCampos();
}
J

Galera! consegui consertar o problema aqui, só tive que converter o java.util.Date para java.sql.Date aí foi sussa!

Obrigado à todos que respondem! Vlw mesmo!

Forum nota mil!

Criado 14 de outubro de 2010
Ultima resposta 20 de out. de 2010
Respostas 14
Participantes 4