当前位置: 首页 > 知识库问答 >
问题:

Spring MVC中LocalDateTime(java 8)中的Json字符串

曹浩波
2023-03-14

Spring MVC framework中的LocalDateTime(Java8)格式设置有问题

我的VO就像在代码下

在mySQL w_date字段中是DATETIME,并像“2015-12-25 23:18:22”那样重新编码

public class HistoryBoard { 
    @JsonFormat(pattern="yyyy-MM-dd")
    @DateTimeFormat(iso = DateTimeFormat.ISO.TIME)
    private LocalDateTime w_date;


    public LocalDateTime getW_date() {
        return w_date;
    }

    public HistoryBoard setW_date(String w_date) {
        DateTimeFormatter sdf = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss.S");
        this.w_date = LocalDateTime.parse(w_date, sdf);
        return this;
    }
}
<dependency>
    <groupId>com.fasterxml.jackson.datatype</groupId>
    <artifactId>jackson-datatype-jsr310</artifactId>
    <version>2.5.3</version>
</dependency>
"w_date":{"dayOfMonth":25,"dayOfWeek":"FRIDAY","month":"DECEMBER","year":2015,"dayOfYear":359,"monthValue":12,"hour":23,"minute":18,"second":22,"nano":0,"chronology":{"id":"ISO","calendarType":"iso8601"}
@RequestMapping(value = "/listJson.do")
public @ResponseBody Object listJson(Map<String, Object> commandMap, ModelMap model) throws Exception {
    List<HistoryBoard> list = boardService.selectBoardList(commandMap);
    return list;

}

共有1个答案

谢唯
2023-03-14

这里回答了一个类似的问题。您可能必须将@JSONSerialize(using=localDateTimeSerializer.class)添加到字段中。

您还可以创建自定义序列化程序,如下所示:

public class CustomLocalDateTimeSerializer extends JsonSerializer<LocalDateTime>{

    @Override
    public void serialize(LocalDateTime dateTime, JsonGenerator generator, SerializerProvider sp)
            throws IOException, JsonProcessingException {
        String formattedDateTime = dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd")); 
        generator.writeString( formattedDateTime);
    }

}

并在LocalDateTime字段中使用该自定义序列化程序

@JsonSerialize(using = CustomLocalDateTimeSerializer.class)
private LocalDateTime w_date; 
 类似资料:
  • 如何读取文件并从json转换为字符串?示例:我的文件编号为。json[“23423423”,“234234234”,“53453453”] 我想要的是:String numbers=“'23423423','234234234','53453453'”;

  • 本文向大家介绍详解SpringMVC @RequestBody接收Json对象字符串,包括了详解SpringMVC @RequestBody接收Json对象字符串的使用技巧和注意事项,需要的朋友参考一下 页面提交请求参数有两种,一种是form格式提交,一种json格式提交 通常情况下我们使用的都是form格式提交的数据,数据格式:k=v&k=v,这个时候用springMVC接收参数没有问题,但有时

  • 我使用LocalDateTime几乎导致了一个在线错误,直到例如: 我最初认为他应该2天回来,但结果是1天! 然后我看了看对应的源代码,我现在好像明白了:如果超过一天,不到两天,那就只返回一天。 我想问一下Java或Spring中是否有满足我需求的工具。 我想让它回到2天,这符合人们的直觉。 当然,我可以包装一个实用程序类来实现这一点,但我想知道Java中是否有可用的实现? 我的业务场景如下:如果

  • 本文向大家介绍使用SpringMVC返回json字符串的实例讲解,包括了使用SpringMVC返回json字符串的实例讲解的使用技巧和注意事项,需要的朋友参考一下 最近开始接触SpringMVC这个框架,这个框架使用起来很方便,框架搭起来之后,写起代码几乎都是一个模式。当然要走到这一步必须保证你的SpringMVC的相关配置都已经完成,并且配置正确! 作为我的关于S平ringMVC的首篇博客,本篇

  • 是否有任何方法使TypeScript枚举与JSON中的字符串兼容? 例如: 我想要是真的。或者更具体地说,我希望可以将值指定为字符串,而不是数字。 我知道我可以使用但这很麻烦,而且似乎会使枚举类型注释混淆和误导,从而破坏了它的用途。从技术上讲,JSON没有提供有效的枚举值,所以我不应该在枚举中键入属性。 所以我现在做的是使用带有静态常量的字符串类型: 这就得到了我想要的用法,但是类型注释太宽泛了,

  • 我很想知道是否有一种更优雅的方法来尝试找到Java8中字符串中奇数位置的位数之和。 这是我目前的职责 仍然不熟悉Streams和Java8,并认为也许你可以这样做: 欢迎任何建议。