org.springframework.data.redis.serializer.SerializationException: Could not read JSON: Can not construct instance of
java.time.LocalDateTime: no suitable constructor found, can not deserialize from Object value (missing default
constructor or creator, or perhaps need to add/enable type information?) at [Source: [B@64af0942; line: 1, column: 84]
(through reference chain:code.ValidateCode["expireTime"]); nested exception
is com.fasterxml.jackson.databind.JsonMappingException: Can not construct instance of java.time.LocalDateTime:
no suitable constructor found, can not deserialize from Object value (missing default constructor or
creator, or perhaps need to add/enable type information?)at [Source: [B@64af0942; line: 1, column: 84] (through reference
在redis序列化的时候使用LocalDateTime是会出现上述错误,解决方法:
LocalDateTime属性加上注解
import com.fasterxml.jackson.databind.annotation.JsonDeserialize;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.datatype.jsr310.deser.LocalDateTimeDeserializer;
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
public class Demo {
@JsonDeserialize(using = LocalDateTimeDeserializer.class)
@JsonSerialize(using = LocalDateTimeSerializer.class)
private LocalDateTime expireTime;
}
这样就可以解决问题了。