问题标签 [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 投票
2 回答
3703 浏览

java - 使用 Jersey 客户端,Java 8 Date API (Jsr310) 的问题

我正在使用 jersey 客户端使用 REST 服务做一个小 PoC,但我遇到了 LocalDateTime 格式的字段问题。REST 服务响应如下:

还有我的实体类:

我的 pom.xml 中的依赖项:

我的代码使用 jersey 客户端执行 GET /api/info/123:

我遇到了这样的异常:

我错过了什么?我用 RestTemplate(Spring 休息客户端)尝试了这个,它无需任何配置即可完美运行。

0 投票
4 回答
8404 浏览

java - 使用 Spring Data REST 时如何更改 Jacksons 配置?

我正在尝试将 Jackson 配置为以 ISO 8601 格式显示 JSR 310 瞬间。

然而,这不是一个独特的 Bean,实际上我只想禁用这个设置。所以我并不是真的想创建 ObjectMapper,而是在它上面指定一个设置。

虽然不是真的需要,但这是我的pom.xml

和我的控制器的输出,它在问候 DTO 中有一个 Instant。

如何在默认对象映射器上重新配置这一设置?

0 投票
3 回答
12887 浏览

jackson - 无法使用 Jackson 将 java.time.LocalDate 序列化为字符串

我正在使用 spring-boot 1.2.1.RELEASE 和 jackson 2.6.2,包括 jsr310 数据类型。我正在使用注释 @SpringBootApplication 来启动我的 Spring 应用程序。我有

在我的 application.properties 中设置(我知道正在读取它,因为我使用banner = false 进行了测试)。

然而 java.time.LocalDate 仍然被序列化为一个整数数组。我没有使用@EnableWebMvc。

看起来如果我添加标签

到我的 LocalDate 变量然后它工作。但我认为上面的属性集是自动的。另外,如果我没记错的话(我刚刚决定使用整数数组),那只适用于序列化而不是反序列化(但老实说,我不太记得最后一部分是否属实)。

0 投票
0 回答
232 浏览

spring - Neo4jTemplate 保存不保存 Java 8 LocalDateTime 字段

我正在使用带有 spring-data-neo4j-rest 的 spring-boot。Maven依赖项为

我的模型有一个 LocalDateTime 类型的字段

在服务类中,此模型使用 Neo4jTemplate 保存方法保存。

问题是当 Date 字段作为时间戳存储在 Neo4j 中时,LocalDateTime 根本没有存储。不明白我在这里做错了什么。是否需要将 LocalDateTime 的自定义转换器添加到长转换并如LocalDateTime 中所述注册不是转换为字符串而是转换为 Json 对象

0 投票
0 回答
5977 浏览

jackson - Java-8 LocalDateTime 使用 DateTimeFormatter 序列化

我正在使用 Dropwizard 0.8.4 和 jackson-datatype-jsr310。

a) 想将我的 LocalDateTime 序列化为 JSON 输出作为 DateTimeFormatter.ISO_INSTANT 但找不到任何干净的方法来做到这一点(不实现自定义序列化类),这不应该是与简单注释非常标准的事情吗?

目前我的代码适用于:

但该模式与 ISO_INSTANT 并不完全相同,并且当我对其进行一些调试时,ISO_INSTANT 甚至不能由字符串模式呈现。

b)使用 Joda-Time 会更好吗,Dropwizard 似乎默认支持它?

c)有没有办法根据值(布尔值为假)跳过将 Java 字段序列化为 JSON?我尝试了@JsonFilter 和 SimpleBeanPropertyFilter 但没有让它工作,而且它似乎也被弃用了。@JsonProperty(defaultValue...) 似乎也不起作用。

0 投票
2 回答
4296 浏览

java - 带小时、分钟和秒的时间段

我需要一个表示年、月、周、日、小时、分钟、秒的间隔数据类型。前三个(年、月、日)可以完成,Period后三个(小时、分钟、秒)可以完成,Duration但它们似乎都没有。理想情况下,我想避免实现自定义TemporalAmount.

0 投票
5 回答
27023 浏览

java - ZonedDateTime 的杰克逊反序列化问题

我在反序列化我正在使用的服务期间使用的类中有以下字段。

我正在使用的服务可能会使用以下模式返回 Date 或 DateTime:yyyy-MM-dd'T'HH:mm:ss.SSSZ

让我举两个服务返回的例子:

  • 2015-11-18T18:05:38.000+0200
  • 2015-11-18T00:00:00.000+0200

虽然第一个效果很好,但后者会在反序列化期间引发以下异常:

java.time.format.DateTimeParseException:无法在索引 23 处解析文本“2015-11-18T00:00:00.000+0200”

我在用着;

  • 春季启动 1.3.1
  • Jackson 2.6.4(包含 JSR310 模块)

这是否需要自定义反序列化类?

0 投票
1 回答
3508 浏览

java - 'AttributeConverter 和显式类型不能应用于相同的属性' 使用 LocalDateTime

我正在使用 ZonedDateTime,目前正在使用带有 JPA 的 Spring Boot 1.3.1 和使用 jadira 的 Hibernate:

这工作正常。但是,我现在想改用 LocalDateTime 。我将代码更改为:

通过这样做,我得到以下异常:

0 投票
1 回答
1031 浏览

java - 如何使用 Spring MVC 将表单参数绑定到 Java 8 Duration?

我知道我可以使用以下方法将 Spring MVC 表单 bean 绑定到 LocalDateTime:

这会将 String like 转换2016-01-11T15:05:05.123ZLocalDateTime对象。

我在这里找到了一些文档:http: //blog.codeleak.pl/2014/06/spring-4-datetimeformat-with-java-8.html

我找不到如何对java.time.Duration. 我该怎么做呢?

0 投票
0 回答
72 浏览

java - 使用小数部分强制 DateTimeFormatter.ISO_* 格式

当使用 DateFormatter.ISO_[*] 格式化程序格式化(分区/本地)日期时间时,我希望始终使用“小数秒”部分来格式化日期。

但是,我格式化的每个具有getNanos == 0格式化字符串的 DateTime 对象都是秒精度。

有没有办法强制格式化程序的这种行为?

(我想要这个是因为我希望日志易于解析,并且不幸的是 ISO_8601 期望这个)

** 旁注我使用的是 Threeten 库而不是 java8 本身(即将转换),但我不希望这在它们之间会有所不同