Démarrer avec jodatime

Introduction

[Joda-Time][1] est une alternative robuste aux classes de date et d’heure Java.

Avant Java SE 8, les classes de date et d’heure Java standard telles que [java.util.Calendar][2] sont difficiles à utiliser et sujettes aux erreurs. Joda-Time est devenu la bibliothèque standard de facto pour la manipulation de la date et de l’heure dans de nombreux projets open source.

Cependant, à partir de Java SE 8, le package java.time (JSR-310) est disponible et les utilisateurs sont invités à migrer vers le même puisque Joda-Time est maintenant en [mode maintenance][5].

Quand utiliser Joda-Time

Vous voulez manipuler les dates et les heures et :

  1. Vous développez un projet dans un environnement où Java SE8 n’est pas disponible
  2. Vous maintenez un projet hérité qui utilise déjà Joda-Time
  3. Vous développez un projet multiplateforme et vous souhaitez maintenir une API qui présente des similitudes avec les API d’autres bibliothèques comme [Noda Time][3] et [js-joda][4] (bien qu’il n’y ait pas de match).

Quand ne pas utiliser Joda-Time

  1. Vous n’avez pas besoin de travailler avec des dates et des heures
  2. Vous développez un nouveau projet où Java SE8 est disponible : utilisez plutôt les classes java.time (JSR-310).

Considérations pour l’utilisation de Joda-Time dans les applications Android

Étant donné que la bibliothèque Joda-Time standard peut gonfler l’empreinte mémoire des applications, envisagez d’utiliser [joda-time-android][6]. Il s’agit d’un fork optimisé pour le développement Android, et contient également un port Joda-Time du [DateUtils][7] natif d’Android.

[1] : http://www.joda.org/joda-time/ [2] : https://docs.oracle.com/javase/8/docs/api/java/util/Calendar.html [3] : http://nodatime.org/ [4] : https://js-joda.github.io/js-joda/ [5] : https://en.wikipedia.org/wiki/Maintenance_mode [6] : https://github.com/dlew/joda-time-android [7] : https://developer.android.com/reference/android/text/format/DateUtils.html

Installation

Utilisation de l’archive de la bibliothèque

Téléchargez le [JAR][1] et ajoutez-le au chemin de classe de votre projet Java

Utiliser un outil de construction

Si vous utilisez un outil de compilation comme Maven ou Gradle :

  1. Maven

     <dependency>
         <groupId>joda-time</groupId>
         <artifactId>joda-time</artifactId>
         <version>2.9.6</version>
     </dependency>
    
  2. Graduation

    Add the following line to the dependencies closure inside your build.gradle:

     compile 'joda-time:joda-time:2.9.6'
    

[1] : https://repo1.maven.org/maven2/joda-time/joda-time/2.9.6/joda-time-2.9.6.jar

Bonjour Joda !

Nous pouvons maintenant écrire le programme HelloJoda suivant !

import org.joda.time.LocalDate;

public class HelloJoda {

    public static void main(String [] args) {
        LocalDate today = LocalDate.now();
        System.out.println("Hello Joda! Today's date is: " + today);
    }
}

Ce qui affichera quelque chose comme ceci :

Hello Joda! Today's date is: 2016-11-26