java - 从java搜索时Mongo Id被_id覆盖

标签 java spring mongodb find

这是我的模型类;

 @Document(collection = "answers")
    public class answers {


    String Body;
    String Title;
    int CommentCount;
    int PostTypeId;
    int Score;
    String CreationDate;
    String LastEditDate;
    @Id
    String id;

    int Id;
    public String getId() {
        return id;
    }
    public void setId(String id) {
        this.id = id;
    }
    int AnswerCount;
    public String getBody() {
        return Body;
    }
    public void setBody(String body) {
        Body = body;
    }
    public String getTitle() {
        return Title;
    }
    public void setTitle(String title) {
        Title = title;
    }


    public int getAnswerCount() {
        return AnswerCount;
    }
    public void setAnswerCount(int answerCount) {
        AnswerCount = answerCount;
    }
    public int getCommentCount() {
        return CommentCount;
    }
    public void setCommentCount(int commentCount) {
        CommentCount = commentCount;
    }
    public int getPostTypeId() {
        return PostTypeId;
    }
    public void setPostTypeId(int postTypeId) {
        PostTypeId = postTypeId;
    }
    public int getScore() {
        return Score;
    }
    public void setScore(int score) {
        Score = score;
    }
    public String getCreationDate() {
        return CreationDate;
    }
    public void setCreationDate(String creationDate) {
        CreationDate = creationDate;
    }
    public String getLastEditDate() {
        return LastEditDate;
    }
    public void setLastEditDate(String lastEditDate) {
        LastEditDate = lastEditDate;
    }

}

这是mongodb中的对象

{
    "_id" : ObjectId("554a41d9e4afa41988d61713"),
    "LastActivityDate" : "2015-01-23T19:52:06.337",
    "ParentId" : 128038,
    "Body" : "<p>If you can use Java NIO (JDK 1.4 or greater), then I think you're looking for java.nio.channels.FileChannel.lock()</p>&#xa;&#xa;<p><a href=\"http://java.sun.com/j2se/1.5.0/docs/api/java/nio/channels/FileChannel.html#lock(long,%20long,%20boolean)\" rel=\"nofollow\">FileChannel.lock()</a></p>&#xa;",
    "OwnerDisplayName" : "KC Baltz",
    "OwnerUserId" : 9910,
    "LastEditorUserId" : 9910,
    "Id" : 128119,
    "CreationDate" : "2008-09-24T16:13:36.577",
    "LastEditDate" : "2015-01-23T19:52:06.337",
    "PostTypeId" : 2,
    "Score" : 11,
    "CommentCount" : 4
}

这是从 stackoverflow 数据转储中过滤出来的。

我需要从“Id”中查找:128119 但它不允许通过java如何做到这一点。 有没有什么压倒性的。

最佳答案

尝试将 Id 值更改为不同的值。

db.answers.update({}, {$rename:{"Id":"UUID"}}, false, true);

您在代码中使用的库中的 Id 和 _id 可能有错误 改变会让你的工作变得更好。

关于java - 从java搜索时Mongo Id被_id覆盖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32275414/

相关文章:

sql查询到mongodb?

node.js - 是否可以在nodejs Async( waterfall ,系列等...)中构建动态任务列表

java - 使用 janino 将 java 源代码从字符串编译为字节数组中的字节码

jvm - 如何找到 OpenJDK JVM(热点)代码中包含 main() 方法的类?

java - 监控和限制 Cloud Foundry Java 应用程序的内存使用情况

java - spring mvc属性文件中linux home的路径

node.js - mongodb如何加入集合

java - 在静态环境中引用非静态数组列表?

java - while 循环不循环/显示计数

java - 使用 NOLOCK 消除具有悲观锁定的应用程序的死锁