Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 更新mongo中事务管理器中的多个对象(morphia)_Mongodb_Transactions_Morphia - Fatal编程技术网

Mongodb 更新mongo中事务管理器中的多个对象(morphia)

Mongodb 更新mongo中事务管理器中的多个对象(morphia),mongodb,transactions,morphia,Mongodb,Transactions,Morphia,我有两个一百分 @Entity public class Place { private int rating; public void addRating(int rating) { rating+=rating; datastore.save(this); } } @Entity public class User { private int rating; public void addRating(int

我有两个一百分

@Entity
public class Place  {

    private int rating;

    public void addRating(int rating) {
        rating+=rating;
        datastore.save(this);
    }
}

@Entity
public class User {

    private int rating;

    public void addRating(int rating) {
        rating+=rating;
        datastore.save(this);
    }
}
我需要更新atomic maner中的两个对象。恐怕mongo没有事务支持。有没有一个最好的方法可以在安全的情况下做到这一点

 user.addRating(3);
 place.addRating(3);

如果您需要以原子的方式进行,请更改您的数据结构。事务中的所有内容都需要放在一个文档中。没有其他方法可以模拟事务

如果您的数据绝对不可能做到这一点,那么MongoDB是错误的工作工具

PS:将数据存储在实体中是一种“有趣的”方法