我的域对象
中有此字段@Field
@Enumerated(EnumType.STRING)
private SectionType sectionType;
但是当我检查存储在Solr中的值时,它就像:
com.x.y.objects.SectionType:H_HPI
我想要的只是H_HPI,或者好像我正在调用special.name()方法 此外,我想要一个序列化器,为我的域对象中的所有枚举字段执行此操作。
我知道neo4j例如有一个这样的序列化器,可以作为注释提供给现场。 mongodb也会自动进行转换。
答案 0 :(得分:0)
我遇到了同样的问题,并从Spring Data Solr代码中发现了这个问题
else if (fieldValue instanceof Enum) {
field.setValue(this.getConversionService().convert(fieldValue, String.class), 1f);
}
它设置字符串值
https://github.com/spring-projects/spring-data-solr/commit/4bf0af3344ec9e92ac241eaa25883e73b08f3b0b