- java.lang.Object
-
- java.util.Date
-
- java.sql.Time
-
- All Implemented Interfaces:
Serializable
,Cloneable
,Comparable<Date>
public class Time extends Date
A thin wrapper around the
java.util.Date
class that allows the JDBC API to identify this as an SQLTIME
value. TheTime
class adds formatting and parsing operations to support the JDBC escape syntax for time values.The date components should be set to the "zero epoch" value of January 1, 1970 and should not be accessed.
- Since:
- 1.1
- See Also:
- Serialized Form
-
-
Method Summary
Modifier and Type Method Description int
getDate()
Deprecated.int
getDay()
Deprecated.int
getMonth()
Deprecated.int
getYear()
Deprecated.void
setDate(int i)
Deprecated.void
setMonth(int i)
Deprecated.void
setTime(long time)
Sets aTime
object using a milliseconds time value.void
setYear(int i)
Deprecated.Instant
toInstant()
This method always throws an UnsupportedOperationException and should not be used because SQLTime
values do not have a date component.LocalTime
toLocalTime()
Converts thisTime
object to aLocalTime
.String
toString()
Formats a time in JDBC time escape format.static Time
valueOf(String s)
Converts a string in JDBC time escape format to aTime
value.static Time
valueOf(LocalTime time)
Obtains an instance ofTime
from aLocalTime
object with the same hour, minute and second time value as the givenLocalTime
.-
Methods declared in class java.util.Date
after, before, clone, compareTo, equals, from, getHours, getMinutes, getSeconds, getTime, getTimezoneOffset, hashCode, parse, setHours, setMinutes, setSeconds, toGMTString, toLocaleString, UTC
-
-
-
-
Constructor Detail
-
Time
@Deprecated(since="1.2") public Time(int hour, int minute, int second)
Deprecated.Use the constructor that takes a milliseconds value in place of this constructorConstructs aTime
object initialized with the given values for the hour, minute, and second. The driver sets the date components to January 1, 1970. Any method that attempts to access the date components of aTime
object will throw ajava.lang.IllegalArgumentException
.The result is undefined if a given argument is out of bounds.
- Parameters:
hour
- 0 to 23minute
- 0 to 59second
- 0 to 59
-
Time
public Time(long time)
Constructs aTime
object using a milliseconds time value.- Parameters:
time
- milliseconds since January 1, 1970, 00:00:00 GMT; a negative number is milliseconds before January 1, 1970, 00:00:00 GMT
-
-
Method Detail
-
setTime
public void setTime(long time)
Sets aTime
object using a milliseconds time value.
-
valueOf
public static Time valueOf(String s)
Converts a string in JDBC time escape format to aTime
value.- Parameters:
s
- time in format "hh:mm:ss"- Returns:
- a corresponding
Time
object
-
toString
public String toString()
Formats a time in JDBC time escape format.- Overrides:
toString
in classDate
- Returns:
- a
String
in hh:mm:ss format - See Also:
Date.toLocaleString()
,Date.toGMTString()
-
getYear
@Deprecated(since="1.2") public int getYear()
Deprecated.This method is deprecated and should not be used because SQLTIME
values do not have a year component.- Overrides:
getYear
in classDate
- Returns:
- the year represented by this date, minus 1900.
- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
setYear(int)
-
getMonth
@Deprecated(since="1.2") public int getMonth()
Deprecated.This method is deprecated and should not be used because SQLTIME
values do not have a month component.- Overrides:
getMonth
in classDate
- Returns:
- the month represented by this date.
- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
setMonth(int)
-
getDay
@Deprecated(since="1.2") public int getDay()
Deprecated.This method is deprecated and should not be used because SQLTIME
values do not have a day component.- Overrides:
getDay
in classDate
- Returns:
- the day of the week represented by this date.
- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
Calendar
-
getDate
@Deprecated(since="1.2") public int getDate()
Deprecated.This method is deprecated and should not be used because SQLTIME
values do not have a date component.- Overrides:
getDate
in classDate
- Returns:
- the day of the month represented by this date.
- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
setDate(int)
-
setYear
@Deprecated(since="1.2") public void setYear(int i)
Deprecated.This method is deprecated and should not be used because SQLTIME
values do not have a year component.- Overrides:
setYear
in classDate
- Parameters:
i
- the year value.- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
getYear()
-
setMonth
@Deprecated(since="1.2") public void setMonth(int i)
Deprecated.This method is deprecated and should not be used because SQLTIME
values do not have a month component.- Overrides:
setMonth
in classDate
- Parameters:
i
- the month value between 0-11.- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
getMonth()
-
setDate
@Deprecated(since="1.2") public void setDate(int i)
Deprecated.This method is deprecated and should not be used because SQLTIME
values do not have a date component.- Overrides:
setDate
in classDate
- Parameters:
i
- the day of the month value between 1-31.- Throws:
IllegalArgumentException
- if this method is invoked- See Also:
getDate()
-
valueOf
public static Time valueOf(LocalTime time)
Obtains an instance ofTime
from aLocalTime
object with the same hour, minute and second time value as the givenLocalTime
. The nanosecond field fromLocalTime
is not part of the newly createdTime
object.- Parameters:
time
- aLocalTime
to convert- Returns:
- a
Time
object - Throws:
NullPointerException
- iftime
is null- Since:
- 1.8
-
toLocalTime
public LocalTime toLocalTime()
Converts thisTime
object to aLocalTime
.The conversion creates a
LocalTime
that represents the same hour, minute, and second time value as thisTime
. The nanosecondLocalTime
field will be set to zero.- Returns:
- a
LocalTime
object representing the same time value - Since:
- 1.8
-
toInstant
public Instant toInstant()
This method always throws an UnsupportedOperationException and should not be used because SQLTime
values do not have a date 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
-
-