【问题标题】:How to show time depend on timezone in java 8 and spring 4?如何显示时间取决于 java 8 和 spring 4 中的时区?
【发布时间】:2014-08-08 09:00:40
【问题描述】:

我在使用 java 8 和 spring 4 编写的网站上工作,我们使用的是 java 8 标准时间 api,现在页面上总是显示服务器时间(在用户配置文件中显示他的注册日期)。使用旧的 java time api 可以使用 SimpleDateFormat,但现在不适合。有没有办法在jsp页面或控制器中将服务器时间转换为客户端时间?

【问题讨论】:

    标签: java timezone java-8 datetime-format spring-4


    【解决方案1】:

    处理此问题的一种方法是在请求中获取用户时区字符串(GMT、IST 等)(使用 AJAX 或其他相关技术。

    现在通过使用新的 Java 8 本地日期 API,我们可以实现如下:

    第 1 步: 使用 Java 8 ZoneId 类从提供我们从 ajax 获得的区域查询参数中获取区域。 :

    ZoneId losAngeles =  ZoneId.of("America/Los_Angeles"); 
    

    第 2 步: 使用 LocalTime API 根据该时区获取当前时间,如下所示:

    ZoneId losAngeles =  ZoneId.of("America/Los_Angeles"); 
    LocalDateTime currentTimeInLosAngeles =  LocalTime.now(losAngeles );
    

    第 3 步: 使用 Java 8 ZonedDateTime 类获取特定区域的 DATETIME

     ZoneId losAngeles =  ZoneId.of("America/Los_Angeles"); 
     LocalDateTime currentTimeInLosAngeles =  LocalTime.now(losAngeles );
     ZonedDateTime losAngelsDateTime = ZonedDateTime.of(currentTimeInLosAngeles , losAngeles );
    

    【讨论】:

      猜你喜欢
      • 2014-09-12
      • 1970-01-01
      • 2015-06-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多