我正在尝试学习Play Framework 2.5(JAVA),底层数据库是MongoDB。
我使用Morphia进行实体映射。
目前我在我的java代码中配置了mongoDB数据源,如下所示: -
private static final String DATABASE = "Database";
private static final MongoClientURI mongoClientURI = new MongoClientURI("mongodb://localhost:27017");
private static final MongoClient mongoClient = new MongoClient(mongoClientURI);
private static final Morphia morphia = new Morphia();
private static final Datastore datastore;
private static final DemeanorDAO demeanorDAO;
static {
morphia.mapPackage("models.entity");
datastore = morphia.createDatastore(mongoClient, DATABASE);
datastore.ensureIndexes();
}
如何在conf/application.conf
我是否使用PlayMorphia
模块?
我找到了这些配置属性: -
# configure mongodb host and port. Default value: 127.0.0.1:27017
morphia.db.seeds=127.0.0.1:27017
#
# configure mongodb authentication
# - username. Default value: empty
morphia.db.username=user
# - password. Default value: empty
morphia.db.password=pass
#
# configure database name. Default value: test
morphia.db.name=test
我的Java代码如何使用这些属性?
我在哪个conf/application.conf
部分放置了这些属性?
答案 0 :(得分:1)
你有几个问题。
我是否使用PlayMorphia模块?
如果您不需要它提供的特定功能,请不要这样做。
我的Java代码如何使用这些属性?
您需要在要使用配置值的组件中注入Configuration
(source)类。
例如,对于数据库的连接:
new MongoClientURI("mongodb://" + configuration.getString("morphia.db.seeds"));
我让你检查Configuration
课程,看看哪些方法可用。
我在哪个conf / application.conf部分放置这些属性?
此文件中没有订单。一个好的做法是按域和字母顺序为您订购属性。
免责声明:您应该查看声明与数据库的连接的方式。不要以静态方式启动它,请在application starts。
时声明连接