问题标签 [java-time]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
11052 浏览

java - Java 8 日期/时间 (JSR-310) 类型与 Spring Data MongoDB 的映射

我有带有 Java 8 日期/时间字段的简单文档

我想坚持使用 Spring Data MongoDB 1.5 版。但是类型字段java.time.Instant无法正确反序列化,因为MappingMongoConverter缺少java.time类转换器。

在 Spring 4 中,我发现org.springframework.format.datetime.standard.DateTimeConverters不同Converter的 s 包括InstantToLongConverterLongToInstantConverter声明为私有静态类。

如何配置MongoTemplate以使用它们将Instant字段映射到 long?

0 投票
1 回答
2664 浏览

java - 为什么使用 Instant 将 1582 年之前的 Java 日期转换为 LocalDate 会给出不同的日期?

考虑这段代码:

我知道 1582 年是儒略历和公历之间的分界线。我不知道为什么会发生这种情况,或者如何调整它。

这是我到目前为止所知道的:

  • 日期对象有一个BaseCalender设置为JulianCalendar
  • date.toInstant()刚回来Instant.ofEpochMilli(getTime())
  • date.getTime()返回 -14830974000000
  • -14830974000000 是星期三,1500 年 1 月 10 日 05:00:00 GMT公历

因此,似乎返回的毫秒getTime()数是错误的(不太可能),或者只是与我预期的不同,我需要考虑差异。

0 投票
2 回答
13149 浏览

java - JAXB 可以处理 java.time 对象吗?

我知道JAXB (Java Architecture for XML Binding)可以编组/解组 java.util.Date 对象,正如Blaise Doughan 在这个答案中看到的那样。

但是Java 8中新的java.time 包对象呢,比如?JAXB 是否已更新以处理这种新的内置数据类型?ZonedDateTime

0 投票
2 回答
1519 浏览

java - 上周是 java.time.LocalDate 吗?

我有一个每周统计系统,我想检查最后一次更新统计数据是否是上周。如果是,我想清除它。

目前,日期存储在LocalDate

我已经有了这样的日常统计数据:

我想做这样的事情:

所以,问题是:我如何比较LocalDate对象的周数?一周的形成方式不需要不同的“标准”——将使用周一到周日(Java 的DayOfWeek类已经使用)。

请只保留关于 Java 8 java.time类的评论和答案,不要保留Joda-Time或其他外部库。

0 投票
3 回答
2658 浏览

java - Period.between 仅减去天数

该变量dateSubtract为 16,但我想找到这 2 天之间的总天数,应该是 165。没有 JODA TIME怎么办?

0 投票
2 回答
3081 浏览

java - 计算两个小时的字符串之间的差异

我有一个包含特定小时前的字符串。14:34,现在我想计算当前小时前的差异。21:36-14:34= 7 小时 2 分钟(或类似的时间)。有人能解释一下我该怎么做吗?

0 投票
2 回答
1795 浏览

java - 使用Java划分时间

我正在使用雅虎产品 API 来使用时间限制从雅虎获取产品。我通过开始时间和结束时间来获得该日期之间可用的产品。将这些日期与他们提供的用于获取产品的 URL 一起传递。

在雅虎,每次通话只能获得 1000 件产品是有限制的,所以我要做的是给 1 个月的时间限制,然后拨打电话并在该时间限制内获得产品。在某些情况下它不会超过 1000,但在某些情况下,如果它会超过 1000 个产品,我想将时间分成两半(1 个月到 15 天的时间间隔)并再次检查并重复此操作,直到我在那个时间戳中得到少于 1000 个产品.

除了划分时间,我已经做了所有其他的事情。请帮帮我。

0 投票
4 回答
1433 浏览

java - Java 1.8 时间功能

所以 Java 1.8 带有一组全新的(和旧的)类来管理时间计算:java.time.Instantjava.time.LocalTimejava.time.temporal.ChronoUnit,也许还有更多......

但是为什么没有简单的方法来计算其中任何一个之间的时间差呢?我希望“time_later - time_earlier”是最常用的时间操纵,但这无处可寻。我不能从另一个中减去一个 LocalTime 并获得一个新的 LocalTime;我不能从另一个 Instant 中减去一个 Instant 以获得新的 Instant。相反,我必须摆弄 ChronoUnits.between、长毫秒和诸如此类的东西来实现这个非常有用的东西。

为什么是这样?一定有一些我没有得到的事情发生吗?还是我只是傻...?

0 投票
6 回答
70076 浏览

java - 为什么我不能在 java.time 中获得以分钟或小时为单位的持续时间?

Duration在 Java 8 及更高版本中可用的新JSR 310日期 API(java.time 包)中的类中,javadoc 说:

此类以秒和纳秒为单位对时间量或时间量进行建模。可以使用其他基于持续时间的单位来访问它,例如分钟和小时。此外,可以使用 DAYS 单位并将其视为完全等于 24 小时,从而忽略夏令时的影响。

那么,为什么下面的代码会崩溃?

这引发了一个UnsupportedTemporalTypeException

那么从持续时间对象中提取分钟和小时的推荐方法是什么?我们是否必须自己根据秒数进行计算?为什么以这种方式实施?

0 投票
12 回答
94973 浏览

java - Java 8 的 java.time API 中的模拟时间

Joda Time 有一个不错的DateTimeUtils.setCurrentMillisFixed()来模拟时间。

在测试中非常实用。

Java 8 的 java.time API中是否有等价物?