Kwi*_* FR 2 java mongodb playframework-2.0
我想在Play Framework 2.5应用程序中添加MongoDB.
我们可以看到这个模块在这里,PF的文档.
如何在我的应用程序中添加此模块?
@MongoEntity非常有用,但它是为1.*PF应用程序编写的.
有一个2.5 PF的MongoDB模块?
我尝试过的另一件事:为2.*添加play-mongo模块(通过louth)但在我的build.sbt中添加它们是不可能的:
image.
小智 6
你是Scala还是Java?
对于Scala,请查看ReactMongo
对于Java,我也没有遇到任何插件,所以我开始使用Morphia.这是我配置它的方式
将此添加到build.sbt
"org.mongodb.morphia" % "morphia" % "1.2.1",
Run Code Online (Sandbox Code Playgroud)
这到application.conf
mongodb {
host="localhost"
port=27017
database="my_db"
}
Run Code Online (Sandbox Code Playgroud)
现在,您必须创建一个Singleton类,类似于
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"));
}
}
Run Code Online (Sandbox Code Playgroud)
样本模型
@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();
}
}
Run Code Online (Sandbox Code Playgroud)
这应该适合你.如果我错过任何事情,请告诉我.祝好运!:)
| 归档时间: |
|
| 查看次数: |
1680 次 |
| 最近记录: |