Класс Timestamp
- java.lang.Object
-
- java.util.Date
-
- java.sql.Timestamp
- Все реализованные интерфейсы:
- Serializable, Cloneable, Comparable<Date>
public class Timestamp extends Date
Тонкая оболочка вокруг java.util.Date, которая позволяет API JDBC идентифицировать это как значение SQL TIMESTAMP. Она добавляет возможность хранить значение дробных секунд SQL TIMESTAMP, разрешая указание дробных секунд с точностью до наносекунд. Класс Timestamp также предоставляет операции форматирования и парсинга для поддержки синтаксиса JDBC для значений timestamp.
Точность объекта Timestamp вычисляется как:
-
19, что соответствует числу символов в yyyy-mm-dd чч:мм:сс -
20 + s, что соответствует числу символов в yyyy-mm-dd чч:мм:сс.[fff...] иsпредставляет масштаб данного Timestamp, точность его дробных секунд.
Примечание: Этот тип является составным из java.util.Date и отдельного значения наносекунд. Только целые секунды хранятся в компоненте java.util.Date. Дробные секунды — наносекунды — хранятся отдельно. Метод Timestamp.equals(Object) никогда не возвращает true при передаче объекта, который не является экземпляром java.sql.Timestamp, потому что компонент наносекунд даты неизвестен. В результате метод Timestamp.equals(Object) не симметричен методу java.util.Date.equals(Object). Также метод hashCode использует реализацию java.util.Date и, следовательно, не включает наносекунды в свой расчет.
Из-за различий между классами Timestamp и java.util.Date, рекомендуем коду не рассматривать значения Timestamp как экземпляры java.util.Date. Взаимоотношение наследования между Timestamp и java.util.Date отражает наследование реализации, а не наследование типа.
- См. также:
- Сериализованная форма
Конструкторы
| Конструктор и описание |
|---|
Timestamp(int year,
int month,
int date,
int hour,
int minute,
int second,
int nano) Устарело. Вместо этого используйте конструктор |
Timestamp(long time) Конструирует объект |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
boolean |
after(Timestamp ts) Указывает, является ли этот объект |
boolean |
before(Timestamp ts) Указывает, является ли этот объект |
int |
compareTo(Date o) Сравнивает этот объект |
int |
compareTo(Timestamp ts) Сравнивает этот объект |
boolean |
equals(Object ts) Проверяет, равен ли этот объект |
boolean |
equals(Timestamp ts) Проверяет, равен ли этот объект |
static Timestamp |
from(Instant instant) Получает экземпляр |
int |
getNanos() Получает значение |
long |
getTime() Возвращает число миллисекунд с момента 01.01.1970 00:00:00 по Гринвичу, представленное этим объектом |
int |
hashCode() Возвращает код хэша для этого объекта. |
void |
setNanos(int n) Устанавливает поле |
void |
setTime(long time) Устанавливает этот объект |
Instant |
toInstant() Преобразует этот объект |
LocalDateTime |
toLocalDateTime() Преобразует этот объект |
String |
toString() Форматирует timestamp в формате JDBC timestamp escape. |
static Timestamp |
valueOf(LocalDateTime dateTime) Получает экземпляр |
static Timestamp |
valueOf(String s) Преобразует объект |
Методы, унаследованные от класса java.util.Date
after, before, clone, getDate, getDay, getHours, getMinutes, getMonth, getSeconds, getTimezoneOffset, getYear, parse, setDate, setHours, setMinutes, setMonth, setSeconds, setYear, toGMTString, toLocaleString, UTC Методы, унаследованные от класса java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait Конструкторы
Timestamp
@Deprecated
public Timestamp(int year,
int month,
int date,
int hour,
int minute,
int second,
int nano) Устаревший. Вместо этого используйте конструктор Timestamp(long millis)
Создаёт объект Timestamp с заданными значениями.
- Параметры:
-
year- год минус 1900 -
month- от 0 до 11 -
date- от 1 до 31 -
hour- от 0 до 23 -
minute- от 0 до 59 -
second- от 0 до 59 -
nano- от 0 до 999 999 999 - Исключения:
-
IllegalArgumentException- если аргумент nano находится вне допустимого диапазона
Timestamp
public Timestamp(long time)
Создаёт объект Timestamp с использованием значения времени в миллисекундах. Целое число секунд хранится в базовом значении даты; дробная часть секунды хранится в поле nanos объекта Timestamp.
- Параметры:
-
time- миллисекунды с момента 00:00:00 1 января 1970 года по Гринвичу. Отрицательное значение указывает на количество миллисекунд до 00:00:00 1 января 1970 года по Гринвичу. - См. также:
Calendar
Методы
setTime
public void setTime(long time)
Устанавливает этот объект Timestamp для представления момента времени, который находится на time миллисекунд после 00:00:00 1 января 1970 года по Гринвичу.
- Переопределяет:
-
setTimeв классеDate - Параметры:
-
time- количество миллисекунд. - См. также:
-
getTime(),Timestamp(long time),Calendar
getTime
public long getTime()
Возвращает количество миллисекунд с 00:00:00 1 января 1970 года по Гринвичу, представленное этим объектом Timestamp.
- Переопределяет:
-
getTimeв классеDate - Возвращает:
- количество миллисекунд с 00:00:00 1 января 1970 года по Гринвичу, представленное этой датой.
- См. также:
setTime(long)
valueOf
public static Timestamp valueOf(String s)
Преобразует объект String в формате JDBC timestamp escape в значение Timestamp.
- Параметры:
-
s- timestamp в форматеyyyy-[m]m-[d]d hh:mm:ss[.f...]. Дробная часть секунды может быть опущена. Ведущий ноль дляmmиddтакже может быть опущен. - Возвращает:
- соответствующее значение
Timestamp - Исключения:
-
IllegalArgumentException- если заданный аргумент не имеет форматаyyyy-[m]m-[d]d hh:mm:ss[.f...]
toString
public String toString()
Форматирует timestamp в формате JDBC timestamp escape. yyyy-mm-dd hh:mm:ss.fffffffff, где ffffffffff указывает на наносекунды.
- Переопределяет:
-
toStringв классеDate - Возвращает:
- объект
Stringв форматеyyyy-mm-dd hh:mm:ss.fffffffff - См. также:
-
Date.toLocaleString(),Date.toGMTString()
getNanos
public int getNanos()
Возвращает значение наносекунд этого объекта Timestamp.
- Возвращает:
- дробная часть секунды объекта
Timestamp - См. также:
setNanos(int)
setNanos
public void setNanos(int n)
Устанавливает поле nanos этого объекта Timestamp в заданное значение.
- Параметры:
-
n- новая дробная часть секунды - Исключения:
-
IllegalArgumentException- если заданный аргумент больше 999 999 999 или меньше 0 - См. также:
getNanos()
equals
public boolean equals(Timestamp ts)
Проверяет, равен ли этот объект Timestamp заданному объекту Timestamp.
- Параметры:
-
ts- сравниваемое значениеTimestamp - Возвращает:
-
trueесли заданный объектTimestampравен этому объектуTimestamp;falseв противном случае
equals
public boolean equals(Object ts)
Проверяет, равен ли этот объект Timestamp заданному объекту. Этот метод equals добавлен для исправления неверного подписи Timestamp.equals(Timestamp) и для сохранения обратной совместимости с существующими файлами классов. Примечание: Этот метод не симметричен по отношению к методу equals(Object) в базовом классе.
- Переопределяет:
-
equalsв классеDate - Параметры:
-
ts- сравниваемое значениеObject - Возвращает:
-
trueесли заданный объектObjectявляется экземпляромTimestamp, равным этому объектуTimestamp;falseв противном случае - См. также:
Date.getTime()
before
public boolean before(Timestamp ts)
Указывает, предшествует ли этот объект Timestamp заданному объекту Timestamp.
- Параметры:
-
ts- сравниваемое значениеTimestamp - Возвращает:
-
trueесли этот объектTimestampпредшествует;falseв противном случае
after
public boolean after(Timestamp ts)
Указывает, следует ли этот объект Timestamp после заданного объекта Timestamp.
- Параметры:
-
ts- сравниваемое значениеTimestamp - Возвращает:
-
trueесли этот объектTimestampследует;falseв противном случае
compareTo
public int compareTo(Timestamp ts)
Сравнивает этот объект Timestamp с заданным объектом Timestamp.
- Параметры:
-
ts- объектTimestampдля сравнения с этим объектомTimestamp - Возвращает:
- значение
0если два объектаTimestampравны; значение меньше0если этот объектTimestampпредшествует заданному аргументу; и значение больше0если этот объектTimestampследует за заданным аргументом. - С:
- 1.4
compareTo
public int compareTo(Date o)
Сравнивает этот объект Timestamp с заданным объектом Date.
- Задано в:
-
compareToв интерфейсеComparable<Date> - Переопределяет:
-
compareToв классеDate - Параметры:
-
o- объектDateдля сравнения с этим объектомTimestamp - Возвращает:
- значение
0если этот объектTimestampи заданный объект равны; значение меньше0если этот объектTimestampпредшествует заданному аргументу; и значение больше0если этот объектTimestampследует за заданным аргументом. - С:
- 1.5
hashCode
public int hashCode()
Возвращает хэш-код для этого объекта. Результатом является исключающее ИЛИ двух половин примитивного значения long , возвращённого методом Date.getTime(). То есть, хэш-код - это значение выражения:
(int)(this.getTime()^(this.getTime() >>> 32))Метод
hashCode использует базовую реализацию java.util.Date и, следовательно, не включает наносекунды в своём вычислении. - Переопределяет:
-
hashCodeв классеDate - Возвращает:
- хэш-код для этого объекта.
- См. также:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
valueOf
public static Timestamp valueOf(LocalDateTime dateTime)
Получает экземпляр Timestamp из объекта LocalDateTime, с теми же значениями года, месяца, дня месяца, часов, минут, секунд и наносекунд, что и у предоставленного объекта LocalDateTime.
Предоставленный объект LocalDateTime интерпретируется как локальное время в локальной часовой зоне.
- Параметры:
-
dateTime- объектLocalDateTimeдля преобразования - Возвращает:
- объект
Timestamp - Исключения:
-
NullPointerException- еслиdateTimeравен null. - С:
- 1.8
toLocalDateTime
public LocalDateTime toLocalDateTime()
Преобразует этот объект Timestamp в объект LocalDateTime.
Преобразование создаёт объект LocalDateTime, который представляет те же значения года, месяца, дня месяца, часов, минут, секунд и наносекунд, что и у этого объекта Timestamp в локальной часовой зоне.
- Возвращает:
- объект
LocalDateTime, представляющий то же значение даты и времени - С:
- 1.8
from
public static Timestamp from(Instant instant)
Получает экземпляр Timestamp из объекта Instant.
Instant может хранить точки на временной шкале дальше в будущем и дальше в прошлом, чем Date. В этом случае этот метод выбросит исключение.
- Параметры:
-
instant- мгновение для преобразования - Возвращает:
- объект
Timestamp, представляющий ту же точку на временной шкале, что и предоставленное мгновение - Выбрасывает:
-
NullPointerException- еслиinstantравно null. -
IllegalArgumentException- если мгновение слишком велико, чтобы быть представленным какTimesamp - С:
- 1.8
toInstant
public Instant toInstant()
Преобразует этот объект Timestamp в Instant.
Преобразование создает Instant, представляющий ту же точку на временной шкале, что и этот Timestamp.
© 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.