Heure en java

Utilisateur anonyme -  
 danimo -
Bonjour,

Pour une application java, j'ai besoin de travailler avec des heures, et de les enregistrer dans une base de données mysql.

Quel est le meilleur type de variables à utiliser en java et sur mysql pour calculer avec des heures??????

java.util.Date est depreciate et avec Calendar si je veut stocker 8h00 je doit en plus ajouter une date (qui ne me sert à rien).......



"Ne dites jamais à votre ordinateur que vous êtes pressés"

6 réponses

  1. Utilisateur anonyme
     
    c'est pour faire des calculs genre 16h45 - 7h30 = 9h15 et pouvoir exploiter le 9h15 dans le programme
    2
    1. KX Messages postés 19031 Statut Modérateur 3 020
       
      Tu peux compter en minutes alors ! Dans ce cas un short suffira...
      0
  2. danimo
     
    Salut,

    Date n'est pas elle même "deprecated" mais a toute une flopée de méthodes dépreciées.

    Et avec Calendar, tu peux n'obtenir que l'heure.

    Calendar cal = Calendar.getInstance(); 
              
             // obtention des éléments de l'heure 
                     
             int hh = cal.get(Calendar.HOUR_OF_DAY); 
             int mn = cal.get(Calendar.MINUTE); 
             int ss = cal.get(Calendar.SECOND); 
              
             String heureS = ((hh<10)?"0":"") + hh; 
             String minutesS = ((mn<10)?"0":"") + mn; 
             String secondesS = ((ss<10)?"0":"") + ss; 
              
             System.out.println("\nIl est " + heureS + ":" + minutesS + ":" + secondesS + "\n\n"); 
    


    Cordialement,

    Dan
    Plus on apprend... plus on se rend compte qu'on ne connaît pas grand-chose.
    1
  3. danimo
     
    Re,

    On peut bien entendu obtenir la date et l'heure en utilisant la classe Date et ne garder que l'heure en utilisant SimpleDateFormat:

    
    Date dateActuelle = new Date();
             System.out.println(">>>> La date obtenue est " + dateActuelle);
             
          	// Nous voulons garder uniquement l'heure sous la forme HHhmm  exemple 15h26
          	// Pour ce faire nous utiliserons SimpleDateFormat
          
             DateFormat dateFormat = new SimpleDateFormat("HH'h'mm"); // on ne veut que heure et minutes
             String laDateFormatee = dateFormat.format(dateActuelle);
             System.out.println(">>>> La date formatée = " + laDateFormatee);


    Cordialement,

    Dan
    1
  4. irmeche Messages postés 76 Statut Membre 17
     
    je ne pense que java.util.Date est depreciate.

    import java.util.Date;
    import java.text.SimpleDateFormat;
    
    SimpleDateFormat formater = new SimpleDateFormat("dd/MM/yyyy HH:mm:ss");
    SimpleDateFormat dateformat = new SimpleDateFormat("dd/MM/yyyy");
    
    formater.parse(new Date());
    
    0
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. Utilisateur anonyme
     
    Le truc c'est que les dates j'en ai absolument pas besoin :) j'ai besoin que des heures
    0
  7. KX Messages postés 19031 Statut Modérateur 3 020
     
    Ça dépend ce que tu veux faire avec tes heures, si c'est juste utiliser les nombres entre 0 et 24, un byte suffira largement. Si tu veux faire des écarts d'heure entre plusieurs dates tu peux opter pour le short mais ça te limitera à 7 ans d'intervalle, sinon bêtement un int, et tu es tranquille pour les 500 000 prochaines années...
    Après si c'est pas du tout ce que tu veux explique mieux ce que tu veux faire.

    Remarque : java.util.date n'est PAS depreciate, pas plus que java.sql.Date
    1
    1. danimo
       
      java.util.date ne peut être dépréciée puisqu'elle n'existe pas... mais beaucoup de méthodes de java.util.Date le sont.
      0
    2. KX Messages postés 19031 Statut Modérateur 3 020
       
      Tu chipotes pour une majuscule oubliée... il serait peut-être plus intéressant de donner ton avis sur les 5 lignes du dessus !
      0