我必须在Mongo中存储一些必须从外部库(jar)继承自类的文档:
public class ExternalLibraryClass {
private EventContainer eventContainer;
}
public class MyDocument extends ExternalLibraryClass {
private String firstName;
private String lastName;
}
Spring Data按预期从ExternalLibraryClass序列化 eventContainer 字段。我怎么强迫忽略这个领域?
答案 0 :(得分:0)
您应该可以使用custom converters来完成此操作。像这样的东西
public class MyDocumentConverter implements Converter<MyDocument, DBObject> {
public DBObject convert(MyDocument source) {
DBObject dbo = new BasicDBObject();
dbo.put("firstName", source.getFirstName());
dbo.put("lastName", source.getLastName());
return dbo;
}
}
修改强>
无法保证此功能可行,但更好的方法是为ExternalLibraryClass
创建转换器,并忽略eventContainer
public class ExternalLibraryClassConverter implements Converter<ExternalLibraryClass, DBObject> {
public DBObject convert(ExternalLibraryClass source) {
DBObject dbo = new BasicDBObject();
return dbo;
}
}
同样,这只是一个想法,没有尝试过,如果它不起作用也不会感到惊讶。