我正在使用 MongoDB 编写一个 Java 程序。我有一个类,其功能可能具有以下三种结果之一:
- 在 MongoDB 集合中为函数的输入寻找合适的对象,找到它,并返回它的 ObjectId。
- 同上,但是没找到;创建它,并返回它的 ObjectId。
- 输入结果不适合开始;向调用者返回某种标志值,指示忽略该输入。
前两种情况很简单。我不确定我可以为第三个返回什么样的价值。像 000000000000 这样的虚拟 ObjectId 被视为无效而被拒绝。
我能想到的解决方案是将 ObjectIds 作为字符串返回,然后再将它们转换回 ObjectIds(然后我可以为第三种情况返回我想要的任何标志类型的字符串),或者创建一个实际上意味着没有结果的虚拟数据库项(但是我在哪里跟踪它的 ObjectId,这样我就不必继续查找它了?)。关于如何解决这个问题的任何更好的想法?