问题标签 [jsr310]

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 投票
1 回答
7648 浏览

java-8 - java.util.Date 和 java.util.Calendar 是否已弃用?

似乎新的java.timeAPI 提供了一切java.util.Date,甚至更多。自 Java 8 以来有更新的 API 时,
是否有任何理由使用?应该并且完全避免?java.util.Datejava.timejava.util.Datejava.util.Calendar

0 投票
3 回答
2320 浏览

java - JJWT / Jackson 更改使用的 ObjectMapper

对于我正在进行的项目,我需要使用库io.jsonwebtoken (jjwt)提供的 Spring Security 和 JSON Webtokens 。我需要添加到生成的令牌中的声明之一是以下实体(简化以说明问题):

这可行,但生成的 webtoken 序列化如下:

这可能看起来不是问题,但实际上是一个问题,稍后我需要再次将其映射到 MyEntity 的实例。在线阅读后,我想我需要更改 ObjectMapper 的配置,以更改配置选项(将WRITE_DATES_AS_TIMESTAMPS-flag 切换为 false)。但是,我无法更改 jjwt 使用的 ObjectMapper 的配置,因为它是这样构造的(jjwt 的来源):

我在网上找到的另一个选择是将以下行放在我的 application.properties 文件中:

然而无济于事,jjwt 使用的 ObjectMapper 似乎忽略了这些属性。

我会做什么来实现我的目标?

0 投票
0 回答
166 浏览

spring-mvc - 将 LocalTime 的格式化程序设置为 ISO 的最佳实践

在搜索并查看spring源代码后,我发现我可以通过以下两种方式之一配置应用程序范围的默认LocalTime格式化程序(主要用于请求参数)(均通过子类WebMvcConfigurer

另一种方法是重新定义DateTimeFormatterRegistrar自身并要求自己使用iso格式:

哪一个被认为是最佳实践,并且不会让团队添加一个类似于为日期提供的属性spring.mvc.date-format以用于时间的属性?

编辑:文档说使用第一种方法来注册一个新的格式化程序;我认为这里不是这种情况。

0 投票
1 回答
99 浏览

java - 如何在 Android Studio 中忽略 java.time 包

我目前正在开发一个最低 API 版本为 17(JellyBean)的 Android Studio 项目,因此我无法使用该java.time包。相反,我使用的是适用于 Android ( com.jakewharton.threetenabp:threetenabp:1.1.0) 的 ThreeTen backport。

我的问题是 中的每个类都com.threeten.bp匹配 中的一个java.time,并且我发现容易意外导入错误的类,因为自动完成弹出窗口java.time首先显示该选项。我需要一种方法来java.time从我的项目中删除该包,或者至少告诉 Android Studio 忽略它。有可能这样做吗?

0 投票
0 回答
71 浏览

elasticsearch - Elasticsearch 6.3:为什么 DateHistogramAggregationBuilder 不支持 JSR-310?

在 ES 6.3DateHistogramAggregationBuilder中似乎只支持 jodaDateTimeZone而不是 JSR-310 ZoneId。我错过了什么吗?(我曾经使用DateHistogramBuilderwhich support javaZoneId但该类不再可用)

0 投票
1 回答
473 浏览

spring-boot - Spring Boot 应用程序中 Swagger2 和 jackson-datatype-jsr310 之间的冲突

我正在使用 Spring Boot 创建 REST API,并且在使用 Swagger 2 时序列化 LocalDateTime 时遇到问题。

如果没有 Swagger,JSON 输出是这样的:

使用 Swagger 是这样的:

我已将此添加到 pom 文件中,以便正确序列化日期:

这是杰克逊的配置:

这是 Swagger 的配置:

当我将这样的反序列化器添加到 DTO 的字段时,它会起作用。但是,它应该可以工作而无需添加它。

我想问题在于 Swagger 有自己的对象映射器,它覆盖了另一个对象映射器。知道如何解决它吗?

提前致谢

0 投票
1 回答
843 浏览

android - 使用 LocalDate 而不是日月年的 DatepickerDialog

我正在尝试创建一个自定义DatePickerDialog类来触发onDateSet侦听器回调,但我不想包含“日”“月”和“年”值,而是想重载构造函数以包含LocalDate来自 java.time 的值。我知道我可以将这些值相互转换,但出于学习目的,我想直接进行。

我以前从未扩展/重载过 Android 类,所以我不确定要采取哪些步骤。
我试图创建一个CustomDatePickerDialog扩展的类DatePickerDialog,但默认构造函数仍必须包含超级构造函数,所以这对我没有帮助。

另一个想法是我可以将 Android 类 ( DatePickerDialog) 复制到我的本地应用程序中,在那里更改名称和构造函数,然后使用我的新本地类。问题在于,我找不到 DatePickerDialog 的源代码(或任何与此相关的类)。我也觉得这是一种解决问题的迂回方式。

为扩展默认android类的自定义类更改构造函数的最佳方法是什么?

0 投票
1 回答
106 浏览

java - 根据 JSR-310 本地化 YearWeek 的良好设计

我需要一个代表一周 7 天的本地化概念的对象。该对象与ThreeTen-ExtraYearWeek库中的对象几乎相同,只是第一天和最少天数有所不同。

我最初想LocalizedYearWeek用一些工厂方法来实现一个LocalizedYearWeek.of(int year, int week, WeekDefinition weekDefinition). 该类WeekDefinition只是一个值对象,它定义了一周中的第一天和最少天数,它也可以作为WeekFields.

我不确定它是否是这种时间的最佳模型,但我没有想出更好的设计理念,所以我正在寻找一些关于如何实现它的指导。

0 投票
1 回答
4452 浏览

java - Java 8 例外:com.fasterxml.jackson.datatype.jsr310.deser.InstantDeserializer 没有默认(无 arg)构造函数

我有一个具有字段的模型类:

当这个模型的请求被发送到服务器时,我的控制器会抛出一个异常:

pom.xml 有 2.8.11 版本的依赖:

我知道这是由@JsonDeserialize 需要无参数构造函数引起的,但是有解决方法吗?非常感谢。

0 投票
3 回答
1280 浏览

java - 使用注释的 LocalDate[] 的杰克逊数据绑定

我正在使用带有 Java 8 模块的 Jackson 将 JSON 文件转换为 Java 对象。但是在将 JSON 数组转换为 LocalDate[] 时,应用程序会引发异常。

如何使用注释将下面的 JSON 数组转换为 LocalDate[]?

JSON

代码

例外