spring batch提供的MongoItemReader有方法setFields:
public void setFields(java.lang.String fields)
JSON defining the fields to be returned from the matching documents by
MongoDB.
Parameters:
fields - JSON string that identifies the fields to sort by.
我有一个班级:
public class Raw {
private String id;
private String version;
private String client;
private String appName;
private String os;
// getters & setters
}
我在mongodb中有这样的数据:
{
"_id" : ObjectId("58a3373e1e041a1191cd5d6d"),
"Version" : "123",
"Client" : "SomeClient",
"MobilePlatform" : "iphoneos",
"AppName" : "MyAppName",
"Os" : "Windows 10"
}
- 因此您可以看到所有字段名称都以大写字母开头。 现在我需要使用spring批量从mongo读取数据。 我需要将我的Raw类中的某些字段映射到mongo DB中的数据,以便我能够获取数据。 我怀疑setFields方法只适用于这种情况。 但我对mongo和spring批次也比较新, 所以我想问一下怎么做? 我应该将哪个JSON放入setFields方法? 或者可能还有其他一些选择?
非常感谢任何帮助。
答案 0 :(得分:0)
我自己在文档中找到了答案:http://docs.spring.io/spring-data/data-mongo/docs/1.4.2.RELEASE/reference/html/mapping-chapter.html 可以使用@Field注释,它可以工作。