- 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 ajava.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
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods 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 Detail
Date
@Deprecated(since="1.2") public Date(int year, int month, int day)
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 Detail
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
public static Date valueOf(String s)
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
public String 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(since="1.2") 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 classDate
- Returns:
- the hour represented by this date.
- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
setHours(int)
getMinutes
@Deprecated(since="1.2") 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 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(since="1.2") 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 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(since="1.2") 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 classDate
- Parameters:
i
- the hour value.- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
getHours()
setMinutes
@Deprecated(since="1.2") 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 classDate
- Parameters:
i
- the value of the minutes.- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
getMinutes()
setSeconds
@Deprecated(since="1.2") 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 classDate
- 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 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
public LocalDate 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
public Instant 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
-