Play Framework 2.5如何添加mongoDB?

Play Framework 2.5 how to add mongoDB?

我想在我的 Play Framework 2.5 应用程序中添加 MongoDB。
我们可以在 PF.
的文档中看到这个模块 here 如何在我的应用程序中添加此模块?
@MongoEntity 确实很有帮助,但它是为 1.* PF 应用程序编写的。

2.5 PF 有 MongoDB 模块?
我尝试过的另一件事是:为 2.* 添加 play-mongo 模块(由 louth),但在我的 build.sbt 中无法添加它们: image。

你在使用 Scala 还是 Java?

对于 Scala,请查看 ReactMongo

对于Java,我也没有遇到任何插件,所以我开始使用Morphia。这是我的配置方式

将此添加到 build.sbt

    "org.mongodb.morphia" % "morphia" % "1.2.1",

而这个 application.conf

    mongodb {
      host="localhost"
      port=27017
      database="my_db"
    }

现在,您必须创建一个 Singleton class,类似于

public class MongoConfig {

    private static Datastore datastore;

    public static Datastore datastore() {
        if (datastore == null) {
            initDatastore();
        }
        return datastore;
    }

    public static void initDatastore() {

        final Morphia morphia = new Morphia();

        // Tell Morphia where to find our models
        morphia.mapPackage("models");

        MongoClient mongoClient = new MongoClient(
            ConfigFactory.load().getString("mongodb.host"),
            ConfigFactory.load().getInt("mongodb.port"));

        datastore = morphia.createDatastore(
            mongoClient, ConfigFactory.load().getString("mongodb.database"));
    }

}

示例模型

@Entity(value = "users", noClassnameStored = true)
public class User {

    public String name;

    public void save() {
        datastore().save(this);
    }

    public User query() {
        return datastore()
            .createQuery(User.class)
            .get();   
    }

}

这应该适合您。如果我错过了什么,请告诉我。祝你好运! :)