Класс 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 hh:mm:ss
  • 20 + s , что соответствует количеству символов в yyyy-mm-dd hh:mm:ss.[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 отражают наследование реализации, а не наследование типов.

С момента:
1.1
См. также:
Сериализованная форма

Конструкторы

Конструктор Описание
Timestamp​(int year, int month, int date, int hour, int minute, int second, int nano)

Устарело.

Вместо этого используйте конструктор Timestamp(long millis)

Timestamp​(long time)

Создаёт объект Timestamp, используя значение времени в миллисекундах.

Методы

Модификатор и тип Метод Описание
boolean after​(Timestamp ts)

Указывает, является ли этот объект Timestamp позже, чем заданный объект Timestamp.

boolean before​(Timestamp ts)

Указывает, является ли этот объект Timestamp раньше, чем заданный объект Timestamp.

int compareTo​(Timestamp ts)

Сравнивает этот объект Timestamp с заданным объектом Timestamp.

int compareTo​(Date o)

Сравнивает этот объект Timestamp с заданным объектом Date.

boolean equals​(Object ts)

Проверяет, равен ли этот объект Timestamp заданному объекту.

boolean equals​(Timestamp ts)

Проверяет, равен ли этот объект Timestamp заданному объекту Timestamp.

static Timestamp from​(Instant instant)

Получает экземпляр Timestamp из объекта Instant.

int getNanos()

Получает значение Timestamp объекта nanos.

long getTime()

Возвращает количество миллисекунд с 1 января 1970 года 00:00:00 по Гринвичу, представленное этим объектом Timestamp.

int hashCode()

Возвращает хэш-код для этого объекта.

void setNanos​(int n)

Устанавливает поле Timestamp этого объекта nanos в заданное значение.

void setTime​(long time)

Устанавливает этот объект Timestamp для представления момента времени, который является time миллисекунды после 00:00:00 1 января 1970 года по Гринвичу.

Instant toInstant()

Преобразует этот объект Timestamp в Instant.

LocalDateTime toLocalDateTime()

Преобразует этот объект Timestamp в LocalDateTime.

String toString()

Форматирует timestamp в формате экранирования timestamp JDBC.

static Timestamp valueOf​(String s)

Преобразует объект String в формате экранирования timestamp JDBC в значение Timestamp.

static Timestamp valueOf​(LocalDateTime dateTime)

Получает экземпляр Timestamp из объекта LocalDateTime, с теми же годом, месяцем, днем месяца, часами, минутами, секундами и наносекундами, что и предоставленный LocalDateTime.

Методы, объявленные в классе 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(since="1.2")
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 - миллисекунды с 1 января 1970 года 00:00:00 по Гринвичу. Отрицательное число — количество миллисекунд до 1 января 1970 года 00:00:00 по Гринвичу.
См. также:
Calendar

Методы

setTime

public void setTime(long time)

Устанавливает этот объект Timestamp для представления момента времени, который является time миллисекундами после 1 января 1970 года 00:00:00 GMT.

Переопределяет:
setTime в классе Date
Параметры:
time - количество миллисекунд.
См. также:
getTime(), Timestamp(long time), Calendar

getTime

public long getTime()

Возвращает количество миллисекунд с 1 января 1970 года, 00:00:00 GMT, представленное этим объектом Timestamp.

Переопределяет:
getTime в классе Date
Возвращает:
количество миллисекунд с 1 января 1970 года, 00:00:00 GMT, представленное этой датой.
См. также:
setTime(long)

valueOf

public static Timestamp valueOf(String s)

Преобразует объект String в формате JDBC timestamp escape в значение Timestamp.

Параметры:
s - метка времени в формате 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()

Форматирует метку времени в формате JDBC timestamp escape. yyyy-mm-dd hh:mm:ss.fffffffff, где fffffffff обозначает наносекунды.

Переопределяет:
toString в классе Date
Возвращает:
объект String в формате yyyy-mm-dd hh:mm:ss.fffffffff
См. также:
Date.toLocaleString(), Date.toGMTString()

getNanos

public int getNanos()

Получает значение Timestamp этого объекта nanos.

Возвращает:
компонент дробных секунд объекта Timestamp
См. также:
setNanos(int)

setNanos

public void setNanos(int n)

Устанавливает поле Timestamp этого объекта nanos в заданное значение.

Параметры:
n - новый компонент дробных секунд
Издаёт исключение:
IllegalArgumentException - если заданный аргумент больше 999999999 или меньше 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 - если мгновение времени слишком велико, чтобы быть представленным как Timestamp
С:
1.8

toInstant

public Instant toInstant()

Преобразует этот объект Timestamp в объект Instant.

Преобразование создаёт объект Instant, который представляет ту же точку на временной шкале, что и этот объект Timestamp.

Переопределяет:
toInstant в классе Date
Возвращает:
мгновение времени, представляющее ту же точку на временной шкале
С:
1.8

© 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/en/java/javase/11/docs/api/java.sql/java/sql/Timestamp.html

Spec-Zone .ru
спецификации, руководства, описания, API