java.lang.Object
java.util.Date
java.sql.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.
- Since:
- 1.1
- See Also:
- Serialized Form
-
Constructor Summary
-
Method Summary
Modifier and Type Method 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 existingDate
object using the given milliseconds time value.Instant
toInstant()
This method always throws an UnsupportedOperationException and should not be used because SQLDate
values do not have a time component.LocalDate
toLocalDate()
Creates aLocalDate
instance using the year, month and day from thisDate
object.String
toString()
Formats a date in the date escape format yyyy-mm-dd.static Date
valueOf(String s)
Converts a string in JDBC date escape format to aDate
value.static Date
valueOf(LocalDate date)
Obtains an instance ofDate
from aLocalDate
object with the same year, month and day of month value as the givenLocalDate
.
-
Constructor Details
-
Date
Deprecated.instead use the constructorDate(long date)
Constructs aDate
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 11day
- 1 to 31
-
Date
public Date(long date)Constructs aDate
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.
-
-
Method Details
-
setTime
public void setTime(long date)Sets an existingDate
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. -
valueOf
Converts a string in JDBC date escape format to aDate
value.- Parameters:
s
- aString
object representing a date in in the format "yyyy-[m]m-[d]d". The leading zero formm
anddd
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
Formats a date in the date escape format yyyy-mm-dd.- Overrides:
toString
in classDate
- Returns:
- a String in yyyy-mm-dd format
- See Also:
Date.toLocaleString()
,Date.toGMTString()
-
getHours
Deprecated.This method is deprecated and should not be used because SQL Date values do not have a time component.- Overrides:
getHours
in classDate
- Returns:
- the hour represented by this date.
- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
setHours(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 classDate
- 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.This method is deprecated and should not be used because SQL Date values do not have a time component.- Overrides:
getSeconds
in classDate
- 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.This method is deprecated and should not be used because SQL Date values do not have a time component.- Overrides:
setHours
in classDate
- Parameters:
i
- the hour value.- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
getHours()
-
setMinutes
Deprecated.This method is deprecated and should not be used because SQL Date values do not have a time component.- Overrides:
setMinutes
in classDate
- Parameters:
i
- the value of the minutes.- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
getMinutes()
-
setSeconds
Deprecated.This method is deprecated and should not be used because SQL Date values do not have a time component.- Overrides:
setSeconds
in classDate
- Parameters:
i
- the seconds value.- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
getSeconds()
-
valueOf
Obtains an instance ofDate
from aLocalDate
object with the same year, month and day of month value as the givenLocalDate
.The provided
LocalDate
is interpreted as the local date in the local time zone.- Parameters:
date
- aLocalDate
to convert- Returns:
- a
Date
object - Throws:
NullPointerException
- ifdate
is null- Since:
- 1.8
-
toLocalDate
Creates aLocalDate
instance using the year, month and day from thisDate
object.- Returns:
- a
LocalDate
object representing the same date value - Since:
- 1.8
-
toInstant
This method always throws an UnsupportedOperationException and should not be used because SQLDate
values do not have a time component.- Overrides:
toInstant
in classDate
- Returns:
- an instant representing the same point on the time-line as
this
Date
object - Throws:
UnsupportedOperationException
- if this method is invoked
-