繁体   English   中英

Spring Mongo:如何在不使用VO的情况下自定义_id?

[英]Spring mongo : How to customize _id without VO?

我正在使用MongoDB和Spring 3.2.8。

我要做的是使用MyBatis查询Oracle数据库,并将从查询返回的ResultMap放入Mongo DB。

的情况。

  • ResultMap可以按我预期的那样很好地工作。 它返回正确的HashMap<String, Object>List<HashMap<String, Object>

  • 在该ResultMap中,我有一个名为“ service_id”的元素,该元素应替换mongo中的“ _id”。

  • 使用MongoTemplate(org.springframework.data.mongo.core)推入mongoDB效果也很好。

  • 问题是,由于mongoDB使用自己的'_id'作为主键,如果我放置相同的对象,它将大小加倍。

题。

  • 如何使用“ service_id”作为mongo的主键?

条件。

部分源代码。 tmp.insert(map,collectionName); 这个tmp是MongoTemplate,我假设它没有任何方法来控制“ _id”。

谢谢:D

简单的解决方案,但我认为这是正统的方式。

  • 将元素放入ReturnMap中。 例如map.put("_id", map.get("service_id"));

现在,我可以防止值重复。

如果有更好的方法,我将选择一种作为方法:D谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM