- java.lang.Object
-
- java.util.Date
-
- java.sql.Timestamp
-
- 实现的所有接口
-
Serializable,Cloneable,Comparable<Date>
public class Timestamp extends Date
一个瘦的包装器,围绕
java.util.Date,允许JDBC API将其标识为SQLTIMESTAMP值。 它通过允许小数秒的指定精度为纳秒,增加了保存SQLTIMESTAMP小数秒值的功能。 Timestamp还提供格式化和解析操作,以支持时间戳值的JDBC转义语法。Timestamp对象的精度计算为:
-
19,这是yyyy-mm-dd中的字符数hh:mm:ss -
20 + s,这是yyyy-mm-dd中的字符数hh:mm:ss。[fff ...]和s表示给定时间戳的比例,其小数秒精度。
注意:此类型是
java.util.Date和单独的纳秒值的组合。java.util.Date组件中仅存储整数秒。 分数秒 - 纳米 - 是分开的。 传递不是java.sql.Timestamp实例的对象时,Timestamp.equals(Object)方法永远不会返回true,因为日期的nanos组件未知。 结果,Timestamp.equals(Object)方法相对于java.util.Date.equals(Object)方法java.util.Date.equals(Object)。 此外,hashCode方法使用底层java.util.Date实现,因此在其计算中不包括nanos。由于上面提到的
Timestamp类和java.util.Date类之间的差异,建议代码不要将Timestamp值一般视为java.util.Date的实例。Timestamp和java.util.Date之间的继承关系实际上表示实现继承,而不是类型继承。- 从以下版本开始:
- 1.1
- 另请参见:
- Serialized Form
-
-
方法摘要
所有方法 静态方法 实例方法 具体的方法 变量和类型 方法 描述 booleanafter(Timestamp ts)指示此Timestamp对象是否晚于给定的Timestamp对象。booleanbefore(Timestamp ts)指示此Timestamp对象是否早于给定的Timestamp对象。intcompareTo(Timestamp ts)将此Timestamp对象与给定的Timestamp对象进行比较。intcompareTo(Date o)将此Timestamp对象与给定的Date对象进行比较。booleanequals(Object ts)测试此Timestamp对象是否等于给定对象。booleanequals(Timestamp ts)测试此Timestamp对象是否等于给定的Timestamp对象。static Timestampfrom(Instant instant)从Instant对象获取Timestamp的实例。intgetNanos()获取此Timestamp对象的值nanos。longgetTime()返回自此Timestamp对象表示的1970年1月1日00:00:00 GMT以来的毫秒数。inthashCode()返回此对象的哈希码值。voidsetNanos(int n)将此Timestamp对象的nanos字段设置为给定值。voidsetTime(long time)设置此Timestamp对象以表示格林威治标准时间1970年1月1日00:00:00之后的time毫秒的时间点。InstanttoInstant()将此Timestamp对象转换为Instant。LocalDateTimetoLocalDateTime()将此Timestamp对象转换为LocalDateTime。StringtoString()以JDBC时间戳转义格式格式化时间戳。static TimestampvalueOf(String s)将JDBC时间戳转义格式的String对象转换为Timestamp值。static TimestampvalueOf(LocalDateTime dateTime)从LocalDateTime对象获得Timestamp的实例,具有相同的年,月,日,小时,分钟,秒和纳米日期时间值,如提供的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
-
-
-
-
构造方法详细信息
-
Timestamp
@Deprecated(since="1.2") public Timestamp(int year, int month, int date, int hour, int minute, int second, int nano)
Deprecated.instead use the constructorTimestamp(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- 如果纳米参数超出范围
-
Timestamp
public Timestamp(long time)
使用毫秒时间值构造Timestamp对象。 积分秒存储在基础日期值中; 小数秒存储在Timestamp对象的nanos字段中。- 参数
-
time- 从1970年1月1日00:00:00 GMT开始的毫秒数。 负数是1970年1月1日00:00:00 GMT之前的毫秒数。 - 另请参见:
-
Calendar
-
-
方法详细信息
-
setTime
public void setTime(long time)
将此Timestamp对象设置为表示1970年1月1日00:00:00 GMT之后的time毫秒的时间点。- 重写:
-
setTime,类Date - 参数
-
time- 毫秒数。 - 另请参见:
-
getTime(),Timestamp(long time),Calendar
-
getTime
public long getTime()
返回自此Timestamp对象表示的1970年1月1日00:00:00 GMT以来的毫秒数。- 重写:
-
getTime,类Date - 结果
- 自1970年1月1日00:00:00 GMT以来的毫秒数。
- 另请参见:
-
setTime(long)
-
valueOf
public static Timestamp valueOf(String s)
将JDBC时间戳转义格式的String对象转换为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时间戳转义格式格式化时间戳。yyyy-mm-dd hh:mm:ss.fffffffff,其中fffffffff表示纳秒。- 重写:
-
toString,类Date - 结果
-
yyyy-mm-dd hh:mm:ss.fffffffff格式的String对象 - 另请参见:
-
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对象相等; 如果此Timestamp对象在给定参数之前,则值小于0; 如果此Timestamp对象位于给定参数之后,则值大于0。 - 从以下版本开始:
- 1.4
-
compareTo
public int compareTo(Date o)
将此Timestamp对象与给定的Date对象进行比较。- Specified by:
-
compareTo,界面Comparable<Date> - 重写:
-
compareTo在类Date - 参数
-
o-的Date被比作此Timestamp对象 - 结果
-
值
0如果此Timestamp对象与给定对象相等; 如果此Timestamp对象在给定参数之前,则值小于0; 如果此Timestamp对象位于给定参数之后,则值大于0。 - 从以下版本开始:
- 1.5
-
hashCode
public int hashCode()
返回此对象的哈希码值。 结果是Date.getTime()方法返回的原始long值的两半的异或。 也就是说,哈希码是表达式的值:(int)(this.getTime()^(this.getTime() >>> 32))hashCode方法使用基础java.util.Date实现,因此在其计算中不包括nanos。- 重写:
-
hashCode,类Date - 结果
- 此对象的哈希码值。
- 另请参见:
-
Object.equals(java.lang.Object),System.identityHashCode(java.lang.Object)
-
valueOf
public static Timestamp valueOf(LocalDateTime dateTime)
从LocalDateTime对象获得Timestamp的实例,具有相同的年,月,日,小时,分钟,秒和纳米日期时间值,如提供的LocalDateTime。提供的
LocalDateTime被解释为本地时区的本地日期时间。- 参数
-
dateTime- 要转换的LocalDateTime - 结果
-
一个
Timestamp对象 - 异常
-
NullPointerException- 如果dateTime为空。 - 从以下版本开始:
- 1.8
-
toLocalDateTime
public LocalDateTime toLocalDateTime()
将此Timestamp对象转换为LocalDateTime。转换创建一个
LocalDateTime,代表同一年,月,日,月,小时,分钟和Timestamp日期时间值,如本地时区中的Timestamp。- 结果
-
表示相同日期时间值的
LocalDateTime对象 - 从以下版本开始:
- 1.8
-
from
public static Timestamp from(Instant instant)
从Instant对象获得Timestamp的实例。Instant可以在未来的时间线上存储点,并且比Date。 在这种情况下,此方法将引发异常。- 参数
-
instant- 即时转换 - 结果
-
Timestamp表示时间线上与提供的瞬间相同的点 - 异常
-
NullPointerException- 如果instant为空。 -
IllegalArgumentException- 如果瞬间太大而无法表示为Timestamp - 从以下版本开始:
- 1.8
-
-