有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java数据库中的datetime类型是以json格式的数组形式出现的,我如何才能让它以字符串形式出现呢?

我有一个java的SpringMVC项目,当以JSON格式从MySQL数据库中获取信息时,DateTime类型被放入一个数组中

 {"start":[2019,3,25,11,0],"end":[2019,3,25,14,0]}

我需要它们像一根绳子。我对spring不太熟悉,所以我不知道是否有一个注释可以用来阻止它

这是我的控制器

@RequestMapping(value = "/events")
@ResponseBody
@JsonSerialize(using = LocalDateTimeSerializer.class)
List <Events> events (@RequestBody @RequestParam("to") 
@DateTimeFormat(iso= ISO.DATE_TIME) LocalDateTime start, 
@RequestParam("from") @DateTimeFormat(iso = ISO.DATE_TIME) LocalDateTime 
 end){

    System.out.println("Start DateTime: "+ start);
    System.out.println("End DateTime: "+ end);
    List<Events> eventsToreturn = eventService.findBetween(start, end);
    return eventService.findBetween(start, end);
}

我希望它返回json格式,而不以数组开头和结尾


共 (1) 个答案

  1. # 1 楼答案

    首先,确保依赖项中有jackson-datatype-jdk8

    如果您想要ISO 8601格式,最好使用OffsetDateTime

    您还应该将jackson配置为禁用SerializationFeature.WRITE_DATES_AS_TIMESTAMPS,以便以正确的格式写入