Класс 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 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) | Создаёт объект |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean | after(Timestamp ts) | Указывает, является ли этот объект |
boolean | before(Timestamp ts) | Указывает, является ли этот объект |
int | compareTo(Timestamp ts) | Сравнивает этот объект |
int | compareTo(Date o) | Сравнивает этот объект |
boolean | equals(Object ts) | Проверяет, равен ли этот объект |
boolean | equals(Timestamp ts) | Проверяет, равен ли этот объект |
static Timestamp | from(Instant instant) | Получает экземпляр |
int | getNanos() | Получает значение |
long | getTime() | Возвращает количество миллисекунд с 1 января 1970 года 00:00:00 по Гринвичу, представленное этим объектом |
int | hashCode() | Возвращает хэш-код для этого объекта. |
void | setNanos(int n) | Устанавливает поле |
void | setTime(long time) | Устанавливает этот объект |
Instant | toInstant() | Преобразует этот объект |
LocalDateTime | toLocalDateTime() | Преобразует этот объект |
String | toString() | Форматирует timestamp в формате экранирования timestamp JDBC. |
static Timestamp | valueOf(String s) | Преобразует объект |
static Timestamp | valueOf(LocalDateTime dateTime) | Получает экземпляр |
Методы, объявленные в классе 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.
© 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