Voor datums en tijden kunnen de volgende datatypes gebruikt worden in Java
java.util.Date
java.util.Calendar
java.sql.TimeStamp
java.time.LocalDate
java.time.LocalTime
java.time.LocalDateTime
java.time.OffsetTime
java.time.OffsetDateTime
De Annotatie @Temporal is enkel nodig bij de klasse Date en Calendar, dit zijn verouderde klassen, het gebruik van deze klassen wordt afgeraden.
Echter kunnen deze oude klassen zowel de datum als de tijd bevatten. Om aan te geven welk gedeelte van dit object in de databank moet bewaard worden, moeten we dit meegeven met de annotatie met 1 van de onderstaande opties.
Bij de andere klassen (niet in het rood) is dit niet nodig, zij geven zelf aan of het om datum, tijd of datum-en-tijd gaat.