Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 38
  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305

    [Java] Testare orario ad ogni secondo

    Salve ragazzi devo implementare un software che mi permetta ad una certa ora di fare una determinata azione !! Posso mai verificare l'orario ogni secondo ?

  2. #2
    Utente di HTML.it L'avatar di Alex'87
    Registrato dal
    Aug 2001
    residenza
    Verona
    Messaggi
    5,802
    Devi necessariamente implementarlo da zero? Di soluzioni già pronte ne trovi, cron ad esempio. Altrimenti specifica meglio il contesto.
    SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
    Di questo libro e degli altri (blog personale di recensioni libri) | ​NO M.P. TECNICI

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    allora ho il seguente problema: ho un database mysql con un campo di tipo date, devo prelevare tutte le tuple che hanno la data odierna utilizzando java. adesso mi chiedo come la creo questa query? praticamente come faccio ad ottenere la data attuale a partire di java in un formato che sia poi compatibile per il confronto con mysql?

  4. #4
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Semplice: si ottiene un oggetto java.util.Date, tramite questo si crea un oggetto java.sql.Date e si usa quest'ultimo per fare le query:

    codice:
    // Ottengo la data di sistema (data di oggi) in un formato "compatibile" con i DB
    java.sql.Date sqlDate = new java.sql.Date( new java.util.Date().getTime() );
    
    // Uso l'oggetto in un PreparedStatement:
    String sql = "SELECT * FROM Tabella WHERE campoData = ?";
    PreparedStatement pstmt = con.prepareStatement( sql );
    pstmt.setDate(1, sqlDate);
    
    ResultSet rs = pstmt.executeQuery();
    ...

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  5. #5
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    grazie mille. Perchè Date e non GregorianCalendar? Ovvero quando bisogna utilizzare una e quando bisogna utilizzare l'altra?

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    GregorianCalendar è uno strumento che consente di "manipolare" le date: consente di spostare le date avanti e indietro e tante altre cose. Se a te serve solo l'informazione sull'istante di tempo, usa un oggetto Date, che non è modificabile.

    Dal punto di vista prettamente funzionale, usare Date o GregorianCalendar non sposta di una virgola... l'unica differenza è che devi fare un "passaggio" in più, dato che i Calendar, con il metodo getTime(), ritornano, appunto un Date:

    codice:
    GregorianCalendar gc = new GregorianCalendar();
    java.sql.Date sqlDate = new java.sql.Date( gc.getTime().getTime() );
    ...

    Solo che, appunto, è uno spreco di risorse: non ha senso istanziare una completa gestione del calendario solo per ottenere la data odierna.

    Ah, per la cronaca... si può anche fare a meno del Date:

    codice:
    java.sql.Date sqlDate = new java.sql.Date( System.currentTimeMillis() );

    Ciao.
    Ultima modifica di LeleFT; 03-04-2014 a 18:28
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    davvero grazie !

  8. #8
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Quote Originariamente inviata da linux_r Visualizza il messaggio
    davvero grazie !
    Di nulla... vedi anche il mio ultimo update, fatto mentre stavi leggendo.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

  9. #9
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    ti chiedo scusa ,ritornando alle date, devo confrontare due date, ma la precisione non deve essere al millisecondo , ovvero si deve fermare a giorno mese e anno . Come posso fare?

  10. #10
    Utente di HTML.it
    Registrato dal
    Jan 2014
    Messaggi
    305
    Ritornando al problema, originale, devo far si che una volta scaricati gli orari degli appuntamenti dal db della data odierna, quando arriva l'ora di un appuntamento avviso con un messaggio a schermo. Io avevo pensato questa soluzione :
    supponendo oggi di avere 3 appuntamenti uno alle 16, uno alle 17,uno alle 18,creo un thread che dorme dal momento del download degli appuntamenti fino alle 16 , in cui mi avvisa dell ,appuntamento, poi successivamente sempre lo stesso thread dorme fino alle 17 e cosi via. Inserendo gli orari in una coda. Cosa ne pensate?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.