morphia和如何更新现有文档字段

Eri*_*rik 9 java mongodb morphia

我是MongoDb和Morphia的新手,并
试图学习如何更新我的文档.

我无法从这个页面看到/理解如何做到这一点:http:
//www.mongodb.org

我的文档如下所示:(可能在这里有些错误)

@Entity
public class UserData {

    private Date creationDate;
    private Date lastUpdateDate;

    @Id private ObjectId id;
    public String status= "";
    public String uUid= "";


    public UserData() {
        super();
        this.statistic = new Statistic();
        this.friendList = new FriendList();
    }

    @Embedded
    private Statistic statistic;
    @Embedded
    private FriendList friendList;

    @PrePersist
    public void prePersist() {
        this.creationDate = (creationDate == null) ? new Date() : creationDate;
        this.lastUpdateDate = (lastUpdateDate == null) ? creationDate : new Date();
    }
}
Run Code Online (Sandbox Code Playgroud)

在那个页面上,我看不到任何地方,他们描述如何更新我的UserData具有特定的uUid
喜欢update UserData.statusifuUid=123567

这是我认为我应该使用的:

ops=datastore.createUpdateOperations(UserData.class).update("uUid").if uuid=foo..something more here..
Run Code Online (Sandbox Code Playgroud)

// morphia默认更新是更新所有UserData文档,以便如何更新所选的文档

datastore.update(datastore.createQuery(UserData.class), ops);  
Run Code Online (Sandbox Code Playgroud)

aav*_*aav 12

我想这就是你想要的:

query = ds.createQuery(UserData.class).field("uUid").equal("1234");
ops = ds.createUpdateOperations(UserData.class).set("status", "active");

ds.update(query, ops);
Run Code Online (Sandbox Code Playgroud)