我想使用mongo java驱动程序3.5,它允许您保存POJO(它会自动将其映射到BSON)。http://mongodb.github.io/mongo-java-driver/3.5/driver/getting-started/quick-start-pojo/
此pojo包含一个类型映射字段(称为dynabean):
private String signature;
private Map<String, Object> properties = new LinkedHashMap<>();
当我尝试保存它时,我得到:
CodecConfigurationException: Can't find a codec for class java.lang.Object
我尝试用文档替换此地图:
private String signature;
private Document properties;
但是,当我尝试保存包含文档的pojo对象时 - 它不起作用:
CodecConfigurationException: Can't find a codec for class my.test.case.PojoWithDocument
总结:我可以保存文档,可以保存一个POJO,但是我无法保存包含文档的POJO。而且我无法保存包含Map<String, Object>
的POJO。
我该如何处理?有什么想法吗?
使用Java Mongo驱动程序3.6,您应该能够保存包含文档的POJO。