Java Date/Time APIs having a big improvements in Java 8. Before, we will use the java.util.Date and java.util.Calendar APIs, or the complement library - Joda-Time. Java 8 introduced new APIs to handle date and time, which allow us to have more control over our date and time objects, and a more fluent API, without using additional libraries. So if you already in Java 8 and above, you can use this standard library which available in package java.time. But if you still using the old classes, worry not because we will try to give you a better understanding on how to use these classes. If you are using third party library like Joda-Time, we also will cover some examples using this library. In short, this series will cover some articles on how to work with Date and Time in Java.

Tutorials in this series:

  • Java Date/Time Introduction

    There are many Java classes available for date/time and it can becomes pretty confusing. This article try to give an overview of which classes or libraries for working with Date/Time in Java, and how you should use it.
  • Java Date Examples

    java.util.Date class represents a date and time, and is sufficient if you just need a simple timestamp. This article will list down some examples on how to work with Java's java.util.Date, and what methods are available for this class.
  • Java Calendar and GregorianCalendar Examples

    The Calendar is an abstract class provides support to access a set of calendar fields and manipulating them. GregorianCalendar is a concrete subclass of Calendar and provides the standard calendar system used by most of the world.
  • Java Calendar Methods

    Calendar is an abstract class that provides methods for converting date between a specific instant in time and a set of calendar fields. There are several methods in this class like getTime(), setTime(), get(), set(), after(), before() and many more.
  • Java GregorianCalendar Methods

    GregorianCalendar is a concrete subclass of Calendar and provides the standard calendar system used by most of the world. It inherits and implements methods from Calendar class.
  • java.sql.Date Examples

    The java.sql.Date extends java.util.Date class and is used in the JDBC API to handle SQL DATE specific requirements. java.sql.Date keeps years, months and days, without time information
  • java.sql.Time Examples

    The java.sql.Time extends java.util.Date class and is used in the JDBC API to handle SQL TIME specific requirements. java.sql.Time keeps hours, minutes and seconds, without date component
  • java.sql.Timestamp Examples

    The java.sql.Timestamp extends java.util.Date class and is used in the JDBC API to handle SQL TIMESTAMP specific requirements. java.sql.Timestamp able to keeps date and time, until nanoseconds component.
  • java.util.Date vs java.sql.Date

    In this article we will learn the difference between java.util.Date and it's subclass java.sql.Date, how to convert from and to each type, and how to use java.sql.Date in real database operation scenario.
  • How to Convert java.util.Date to java.sql.Timestamp

    In this article we will learn about java.sql.Timestamp class, how to convert from java.util.Date to java.sql.Timestamp and vice versa, and how to use java.sql.Timestamp in real database operation scenario.
  • java.sql.Date, java.sql.Time, and java.sql.Timestamp

    Most of database support three forms of datetime fields which are DATE, TIME and TIMESTAMP. Each of these have a corresponding class in JDBC and each of them extend java.util.Date. These three are: java.sql.Date, java.sql.Time, and java.sql.Timestamp.
  • Java TimeZone Examples

    TimeZone is an abstract class represents a time zone offset, and also figures out daylight savings. The java.util.TimeZone class is used in conjunction with the java.util.Calendar class.
  • Java Instant Tutorial with Examples

    Java Instant class is used to represent a specific moment on the time line. This might be used to record event time-stamps in the application. This class is immutable and thread-safe, and has nanoseconds precision.
  • Java LocalDate Tutorial with Examples

    LocalDate class represent a date without a time-zone in the ISO-8601 calendar system, such as 1980-04-09, often viewed as year-month-day. This class is immutable and thread-safe.
  • Java LocalTime Tutorial with Examples

    LocalTime class represent a time without a time-zone in the ISO-8601 calendar system, such as 15:10:40, often viewed as often viewed as hour-minute-second. Time is represented to nanosecond precision. This class is immutable and thread-safe.
  • Java LocalDateTime Tutorial with Examples

    LocalDateTime class represent a date-time without a time-zone in the ISO-8601 calendar system, such as 2016-05-16T10:15:30, often viewed as year-month-day-hour-minute-second. This class is immutable and thread-safe.
  • Java OffsetDateTime Tutorial with Examples

    OffsetDateTime class represent a date-time with an offset from UTC/Greenwich in the ISO-8601 calendar system, such as 1980-04-09T10:15:30+07:00. This class is immutable and thread-safe.
  • Java OffsetTime Tutorial with Examples

    OffsetTime class represent a time with an offset from UTC/Greenwich in the ISO-8601 calendar system, such as 18:30:45+08:00, often viewed as hour-minute-second-offset. This class is immutable and thread-safe.
  • Java ZonedDateTime Tutorial with Examples

    ZonedDateTime class represent a date-time with a time-zone in the ISO-8601 calendar system, such as 2016-05-16T10:15:30+01:00 Asia/Singapore. This class is immutable and thread-safe.
  • java.time.Duration Tutorial with Examples

    Duration class represents a time-based amount of time between two Instant objects, such as '25.5 seconds'. Duration class stores a long representing seconds and an int representing nanosecond-of-second. This class is immutable and thread-safe.
  • java.time.Period Tutorial with Examples

    Period class represents a date-based amount of time in the ISO-8601 calendar system, such as '4 years, 6 months and 15 days'. This class is immutable and thread-safe.
  • Calculate Elapsed/Execution Time in Java

    Wonder on how long your function is get executed? How you measure elapsed time in Java? In this article, we’ll explore several ways to measure elapsed time.
  • Convert String to Date Using SimpleDateFormat

    Most of programmers is familiar with following task: converting a string into a date. In this article, we will learn how to convert String into Date using java.text.SimpleDateFormat
  • Java DateTimeFormatter Tutorial with Examples

    DateTimeFormatter class is a formatter for printing and parsing date-time objects since the introduction of Java 8 date time API.