Class Date

All Implemented Interfaces:
Serializable, Cloneable, Comparable<Date>

public class Date
extends Date

A thin wrapper around a millisecond value that allows JDBC to identify this as an SQL DATE value. A milliseconds value represents the number of milliseconds that have passed since January 1, 1970 00:00:00.000 GMT.

To conform with the definition of SQL DATE, the millisecond values wrapped by a java.sql.Date instance must be 'normalized' by setting the hours, minutes, seconds, and milliseconds to zero in the particular time zone with which the instance is associated.

See Also:
Serialized Form

Constructors

Constructor and Description
Date(int year, int month, int day)

Deprecated.

instead use the constructor Date(long date)

Date(long date)

Constructs a Date object using the given milliseconds time value.

Methods

Modifier and Type Method and Description
int getHours()

Deprecated.

int getMinutes()

Deprecated.

int getSeconds()

Deprecated.

void setHours(int i)

Deprecated.

void setMinutes(int i)

Deprecated.

void setSeconds(int i)

Deprecated.

void setTime(long date)

Sets an existing Date object using the given milliseconds time value.

Instant toInstant()

This method always throws an UnsupportedOperationException and should not be used because SQL Date values do not have a time component.

LocalDate toLocalDate()

Converts this Date object to a LocalDate

String toString()

Formats a date in the date escape format yyyy-mm-dd.

static Date valueOf(LocalDate date)

Obtains an instance of Date from a LocalDate object with the same year, month and day of month value as the given LocalDate.

static Date valueOf(String s)

Converts a string in JDBC date escape format to a Date value.

Methods inherited from class java.util.Date

after, before, clone, compareTo, equals, from, getDate, getDay, getMonth, getTime, getTimezoneOffset, getYear, hashCode, parse, setDate, setMonth, setYear, toGMTString, toLocaleString, UTC

Methods inherited from class java.lang.Object

finalize, getClass, notify, notifyAll, wait, wait, wait

Constructors

Date

@Deprecated
public Date(int year,
                        int month,
                        int day)

Deprecated. instead use the constructor Date(long date)

Constructs a Date object initialized with the given year, month, and day.

The result is undefined if a given argument is out of bounds.

Parameters:
year - the year minus 1900; must be 0 to 8099. (Note that 8099 is 9999 minus 1900.)
month - 0 to 11
day - 1 to 31

Date

public Date(long date)

Constructs a Date object using the given milliseconds time value. If the given milliseconds value contains time information, the driver will set the time components to the time in the default time zone (the time zone of the Java virtual machine running the application) that corresponds to zero GMT.

Parameters:
date - milliseconds since January 1, 1970, 00:00:00 GMT not to exceed the milliseconds representation for the year 8099. A negative number indicates the number of milliseconds before January 1, 1970, 00:00:00 GMT.

Methods

setTime

public void setTime(long date)

Sets an existing Date object using the given milliseconds time value. If the given milliseconds value contains time information, the driver will set the time components to the time in the default time zone (the time zone of the Java virtual machine running the application) that corresponds to zero GMT.

Overrides:
setTime in class Date
Parameters:
date - milliseconds since January 1, 1970, 00:00:00 GMT not to exceed the milliseconds representation for the year 8099. A negative number indicates the number of milliseconds before January 1, 1970, 00:00:00 GMT.

valueOf

public static Date valueOf(String s)

Converts a string in JDBC date escape format to a Date value.

Parameters:
s - a String object representing a date in in the format "yyyy-[m]m-[d]d". The leading zero for mm and dd may also be omitted.
Returns:
a java.sql.Date object representing the given date
Throws:
IllegalArgumentException - if the date given is not in the JDBC date escape format (yyyy-[m]m-[d]d)

toString

public String toString()

Formats a date in the date escape format yyyy-mm-dd.

Overrides:
toString in class Date
Returns:
a String in yyyy-mm-dd format
See Also:
Date.toLocaleString(), Date.toGMTString()

getHours

@Deprecated
public int getHours()

Deprecated.

This method is deprecated and should not be used because SQL Date values do not have a time component.

Overrides:
getHours in class Date
Returns:
the hour represented by this date.
Throws:
IllegalArgumentException - if this method is invoked
See Also:
setHours(int)

getMinutes

@Deprecated
public int getMinutes()

Deprecated.

This method is deprecated and should not be used because SQL Date values do not have a time component.

Overrides:
getMinutes in class Date
Returns:
the number of minutes past the hour represented by this date.
Throws:
IllegalArgumentException - if this method is invoked
See Also:
setMinutes(int)

getSeconds

@Deprecated
public int getSeconds()

Deprecated.

This method is deprecated and should not be used because SQL Date values do not have a time component.

Overrides:
getSeconds in class Date
Returns:
the number of seconds past the minute represented by this date.
Throws:
IllegalArgumentException - if this method is invoked
See Also:
setSeconds(int)

setHours

@Deprecated
public void setHours(int i)

Deprecated.

This method is deprecated and should not be used because SQL Date values do not have a time component.

Overrides:
setHours in class Date
Parameters:
i - the hour value.
Throws:
IllegalArgumentException - if this method is invoked
See Also:
getHours()

setMinutes

@Deprecated
public void setMinutes(int i)

Deprecated.

This method is deprecated and should not be used because SQL Date values do not have a time component.

Overrides:
setMinutes in class Date
Parameters:
i - the value of the minutes.
Throws:
IllegalArgumentException - if this method is invoked
See Also:
getMinutes()

setSeconds

@Deprecated
public void setSeconds(int i)

Deprecated.

This method is deprecated and should not be used because SQL Date values do not have a time component.

Overrides:
setSeconds in class Date
Parameters:
i - the seconds value.
Throws:
IllegalArgumentException - if this method is invoked
See Also:
getSeconds()

valueOf

public static Date valueOf(LocalDate date)

Obtains an instance of Date from a LocalDate object with the same year, month and day of month value as the given LocalDate.

The provided LocalDate is interpreted as the local date in the local time zone.

Parameters:
date - a LocalDate to convert
Returns:
a Date object
Throws:
NullPointerException - if date is null
Since:
1.8

toLocalDate

public LocalDate toLocalDate()

Converts this Date object to a LocalDate

The conversion creates a LocalDate that represents the same date value as this Date in local time zone

Returns:
a LocalDate object representing the same date value
Since:
1.8

toInstant

public Instant toInstant()

This method always throws an UnsupportedOperationException and should not be used because SQL Date values do not have a time component.

Overrides:
toInstant in class Date
Returns:
an instant representing the same point on the time-line as this Date object
Throws:
UnsupportedOperationException - if this method is invoked

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/javase/8/docs/api/java/sql/Date.html