带MongoDB的Spring数据1.0.0.m3。为什么spring可以映射这个类:
import org.springframework.data.document.mongodb.index.IndexDirection;
import org.springframework.data.document.mongodb.mapping.Document;
@Document
public class EnumsMapper {
private IndexDirection d = IndexDirection.ASCENDING;
}
但这次失败了:
import org.springframework.data.document.mongodb.index.IndexDirection;
import org.springframework.data.document.mongodb.mapping.Document;
import java.util.List;
import java.util.Arrays;
@Document
public class EnumsMapper {
List<IndexDirection> list_enum_test = Arrays.asList(
new IndexDirection[] {IndexDirection.ASCENDING});
}
用一个:
java.lang.IllegalArgumentException: can't serialize class org.springframework.data.document.mongodb.index.IndexDirection
其他集合(集合,…)和数组也是如此。显然spring可以映射这个枚举,所以编写映射器并不能解决这个问题。这是一个bug还是有办法映射包含枚举的集合(set/map)?
最佳答案
你好像发现了一个虫子:)。这里是the bug,这里是the fix。部署到我们的maven repo的快照二进制文件。如果你还遗漏了什么东西,可以试着在票子上添加评论。
关于mongodb - 如何映射mongodb的spring-data中的枚举集合,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6779929/