Java Date-Time API
This chapter provides tutorial notes and example codes the Date-Time API. Topics include introduction of the java.time package; classes representing moments of time in Epoch seconds or in ISO 8601 calendar date and time fields; classes representing duration of time in seconds and calendar periods in years, months and days.
What Is Date-Time API
java.time.Instant - Representing a Moment of Time
java.time.Instant Usage Examples
java.time.Instant - get(INSTANT_SECONDS) Error
Converting java.util.Date to java.time.Instant
java.time.ZonedDateTime - Calendar and Timezone
java.time.ZonedDateTime Usage Examples
Converting java.util.GregorianCalendar to java.time.ZonedDateTime
java.time.OffsetDateTime - Calendar and UTC Offset
java.time.OffsetDateTime Usage Examples
java.time.LocalDateTime - Local Date and time without Timezone
Partial Date and Time Objects and Classes
java.time.format.DateTimeFormatter - Date-Time Strings
java.time.Duration - Time Durations
java.time.Duration Usage Examples
java.time.Period - Periods in Days and Months
java.time.Period Usage Examples
- Classes of the Date-Time API introduced in Java 8 are better designed than old classes: java.util.Date and java.util.GregorianCalendar.
- The java.time.Instant class is replacing the old java.util.Date class to represent a moment of time
expressed in Epoch seconds and a fraction.
- The java.time.ZonedDateTime class is replacing the old java.util.GregorianCalendar class to represent a moment of time
expressed in ISO 8601 calendar date and time fields, including timezone id and UTC offset.
The java.time.ZonedDateTime class follows a specific timezone id and respects its daylight saving time rules.
- The java.time.OffsetDateTime class also represents a moment of time similar to the java.time.ZonedDateTime class.
It expresses the moment of time in ISO 8601 calendar date and time fields, including UTC offset without timezone id.
- java.time.LocalDateTime, java.time.LocalDate, java.time.LocalTime and other similar classes
represent local date and/or time with a partial list of fields.
They cannot be used to precisely represent any moments of time.
- The java.time.Duration class represents time durations expressed in seconds and fractions of second.
It can be used to manipulate time differences between two moments of time.
- The java.time.Period class represents calendar periods expressed in years, months and/or days.
It can be used to manipulate differences between two ISO 8601 calendar dates.
Table of Contents
About This JDK Tutorial Book
JDK (Java Development Kit)
►Java Date-Time API
Date, Time and Calendar Classes
Date and Time Object and String Conversion
Number Object and Numeric String Conversion
Locales, Localization Methods and Resource Bundles
Calling and Importing Classes Defined in Unnamed Packages
HashSet, Vector, HashMap and Collection Classes
Character Set Encoding Classes and Methods
Character Set Encoding Maps
Encoding Conversion Programs for Encoded Text Files
Socket Network Communication
Datagram Network Communication
DOM (Document Object Model) - API for XML Files
SAX (Simple API for XML)
DTD (Document Type Definition) - XML Validation
XSD (XML Schema Definition) - XML Validation
XSL (Extensible Stylesheet Language)
Message Digest Algorithm Implementations in JDK
Private key and Public Key Pair Generation
PKCS#8/X.509 Private/Public Encoding Standards
Digital Signature Algorithm and Sample Program
"keytool" Commands and "keystore" Files
KeyStore and Certificate Classes
Secret Key Generation and Management
Cipher - Encryption and Decryption
The SSL (Secure Socket Layer) Protocol
SSL Socket Communication Testing Programs
SSL Client Authentication
HTTPS (Hypertext Transfer Protocol Secure)
Full Version in PDF/EPUB