可以删除注解,如:
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
protected LocalDateTime createTime;
并在springboot中创建一个地方配置?
当我试图通过这种方式从数据库获取数据时,出现问题:
public SomeDataMasterDto findById(Integer id) {
SomeDataMasterDto someDataMasterDto = dslContext
.select(jsonObject(
key("id").value(SOME_DATA_MASTER.ID),
key("createTime").value(SOME_DATA_MASTER.CREATE_TIME),
key("orderTime").value(SOME_DATA_MASTER.ORDER_TIME),
key("someDataOtherDtos").value(jsonArrayAgg(jsonObject(
key("id").value(SOME_DATA_OTHER.ID),
key("createTime").value(SOME_DATA_OTHER.CREATE_TIME),
key("offerType").value(SOME_DATA_OTHER.OFFER_TYPE),
)).absentOnNull())
))
.from(SOME_DATA_MASTER)
.leftJoin(SOME_DATA_OTHER).on(SOME_DATA_OTHER.SOME_DATA_MASTER_ID.eq(SOME_DATA_MASTER.ID))
.where(SOME_DATA_MASTER.ID.eq(id))
.groupBy(SOME_DATA_MASTER.ID)
.fetchOneInto(SomeDataMasterDto.class);
return someDataMasterDto;
}
我尝试在springboot中重写objectmapper,例如:
@Configuration
public class JacksonObjectMapper {
@Bean
public ObjectMapper objectMapper() {
ObjectMapper mapper = new ObjectMapper();
mapper.registerModule(new JavaTimeModule());
return mapper;
}
}
但我认为,jooq使用自己创建的objectmapper。我还尝试了stackoverflow的其他示例(使用 Jackson2ObjectMapperBuilder
, DateFormatter
…)但没有成功。
环境:
jdk 11号
作业质量3.14.4
Spring Boot2.4.1
postgresql 12.2版
暂无答案!
目前还没有任何答案,快来回答吧!