zoukankan      html  css  js  c++  java
  • Java中的时间问题 timestamp date LocalDate*

    基于 Java
    **时间戳 **
    Java中可以通过System.currentTimeMillis() 获取
    计算机中记录的只有时间戳,与时间相关的日,月,年,时分秒,周,时区等概念都是基于时间戳和时间转换规则计算而来。而Date相关的方法主要做的就是这些。记录上述数据及其相关的数据。
    Date
    Date实例化后就不能修改时区了(如果跨时区序列化传输,会有问题),Date的原理就是基于时间戳和当前时区计算出与时间相关的数据。由于其实例化后时区不可修改,所以其转换为时间戳时不会有隐式的时间问题

    LocalDateTime
    能够让我们对给定的时间 取指定时区的时间戳:
    具体取时区方式如下:.localDateTime.toInstant(ZoneId.of("Asia/Aqtau").toTimeZone().toZoneOffset()).toEpochMilli()
    这里,由于LocalDateTime实例化时已经存储了格式化后的时间数据而不是时间戳,而这个数据是和时区相关的。如果我们选择其他时区进行时间戳获取,时间戳会与之前的时间戳不一致

    其实,对于数据库也会存在与Java类似的问题,如果跨国业务,我们希望有同一时刻,应该选用时间戳存储,如果是同一时间则应该选择用datetime存储

  • 相关阅读:
    数组里的数据绑定到dataset中
    有关字符串匹配的方法
    sql语句全集
    Dialog 的6中提示方式
    android开源项目和框架
    MyEclipse DB Browser使用图文全攻略
    省市县联动(转)
    LRU算法
    Java 性能优化小细节
    HashMap
  • 原文地址:https://www.cnblogs.com/yzw-daemon/p/15431050.html
Copyright © 2011-2022 走看看