提问人:coredev 提问时间:3/21/2023 最后编辑:coredev 更新时间:3/24/2023 访问量:62
Spring Boot 应用程序在 redis 中不必要地添加“ClassName._class”属性
Spring boot app unnecessarily adds "ClassName._class" property in redis
问:
我在下面有保存在 Redis 中的 POJO“MyClass”。
class MyClass {
@Id
private String someId;
private GenericAnimalID genericAnimalID;
@Transient
private GenericAnimal genericAnimal
}
class GenericAnimalId{
String variant;
String size;
}
class SpecificAnimalId extends GenericAnimalId{
String someProperty;
}
class GenericAnimal{
@Id
GenericAnimalId genericAnimalId;
String name;
}
所以,基本上我把MyClass存储在redis中,它具有“genericAnimalID”属性。
现在,当我存储一些类型为 SpecificAnimalId 的 ID 时,在 Redis 中插入了一个额外的属性作为
{
genericAnimalId._class : package.SpecificAnimalId,
genericAnimalId : tiger
}
然而,当我存储 GenericAnimalId 类型的 Id 时,它工作正常,只插入我期望的 Id 值。
{
"genericAnimalId":animal
}
在第一种情况下,它在读取此值时会导致转换器问题。而在第二种情况下,没有插入额外的属性,代码在此之后工作正常。
答: 暂无答案
评论