Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is Joda Time deprecated with java 8 Date and Time API? (java.time)

Is there any reason to use Joda Time if I can use Java 8 Date and Time API (java.time)?
Should I use Java 8 Date and Time every time?

like image 378
Ondrej Bozek Avatar asked Apr 20 '15 14:04

Ondrej Bozek


People also ask

Is Joda-time followed in java 8?

Joda-Time is an API created by joda.org which offers better classes and having efficient methods to handle date and time than classes from java. util package like Calendar, Gregorian Calendar, Date, etc. This API is included in Java 8.0 with the java.

Is Joda datetime deprecated?

So the short answer to your question is: YES (deprecated).

What is the replacement of Joda-time Library in java 8?

Correct Option: D. In java 8,we are asked to migrate to java. time (JSR-310) which is a core part of the JDK which replaces joda library project.

Can you provide some APIs of java 8 date and time?

Java 8 provides APIs for the easy formatting of Date and Time: LocalDateTime localDateTime = LocalDateTime. of(2015, Month. JANUARY, 25, 6, 30);


1 Answers

The official statement of the author of Joda-time himself is to migrate as soon as Java-8 is available. See also this citation from the website:

Note that Joda-Time is considered to be a largely “finished” project. No major enhancements are planned. If using Java SE 8, please migrate to java.time (JSR-310).

So the short answer to your question is: YES (deprecated). However, keep in mind that some features like Joda-Interval or PeriodType or PeriodFormatter are not available in Java-8 so you have to write your own partially ugly workarounds, see also my SO-post about differences between Joda-Time and JSR-310.

Side remarks about the future of both libraries:

What does "finished" means in this context?

Well, you can compare the Joda-issue 254 with my small discussion on Twitter. I think people should rather set down their expectations to any major enhancement of Joda-Time. Please also consider that the future development resources regarding Joda-Time are limited (lack of manpower). And let's be honest: Most releases since Joda-Time in year 2008 rather have the character of bugfix releases (with the exception of 2.0).

On the other side: The innovation speed of JSR-310 will probably not be very high, too (because it is already big, and because Oracle is here the decisive player and a date-time-library is in general not considered as the central cornerstone of any Java-release). So there is always some space left for an external library in the future to supply missing features, for example (in alphabetical order):

  • Threeten-Extra (as the favourite of Basil Bourque, see his comment)
  • Time4J (my own extension, interoperability issue solved in summer 2015)
like image 99
Meno Hochschild Avatar answered Oct 13 '22 17:10

Meno Hochschild