环境准备
1、 IP白名单分组添加
2、 相关配置信息application.conf增加
morphia.db.name=库名
morphia.db.url=连接信息
dependencies.yml增加
require:
- playmongo -> playmongo latest.integration
- org.mongodb -> mongo-java-driver 3.12.13
- org.mongodb.morphia -> morphia latest.release
repositories:
- playmongo:
type: local
artifact: ${application.path}/lib/play-morphia.jar
contains:
- playmongo -> playmongo
3、 增加配置文件MongoDB.properties
mongodb_uri=连接信息
mongodb_uri1=连接信息1
mongo.db.databaseName=库名
mongo.db.connectionsPerHost=端口
新增play.plugins
400:play.modules.morphia.MorphiaPlugin
4、
查看依赖是否正常
注意,我在测试链接时有冲突,删除了bson-4.10.0-alpha0.jar,以下为我的报错信息
java.lang.IllegalAccessError: tried to access class org.bson.BSON from class com.mongodb.DBObjectCodec
at com.mongodb.DBObjectCodec.writeValue(DBObjectCodec.java:226)
at com.mongodb.DBObjectCodec.encode(DBObjectCodec.java:159)
at com.mongodb.DBObjectCodec.encode(DBObjectCodec.java:67)
at org.bson.BsonDocumentWrapper.getUnwrapped(BsonDocumentWrapper.java:199)
at org.bson.BsonDocumentWrapper.keySet(BsonDocumentWrapper.java:159)
at com.mongodb.internal.operation.IndexHelper.generateIndexName(IndexHelper.java:61)
at com.mongodb.operation.CreateIndexesOperation.getIndex(CreateIndexesOperation.java:222)
at com.mongodb.operation.CreateIndexesOperation.getCommand(CreateIndexesOperation.java:288)
at com.mongodb.operation.CreateIndexesOperation.access$200(CreateIndexesOperation.java:73)
at com.mongodb.operation.CreateIndexesOperation$1.call(CreateIndexesOperation.java:177)
at com.mongodb.operation.CreateIndexesOperation$1.call(CreateIndexesOperation.java:172)
at com.mongodb.operation.OperationHelper.withConnectionSource(OperationHelper.java:530)
at com.mongodb.operation.OperationHelper.withConnection(OperationHelper.java:492)
at com.mongodb.operation.CreateIndexesOperation.execute(CreateIndexesOperation.java:172)
at com.mongodb.operation.CreateIndexesOperation.execute(CreateIndexesOperation.java:72)
at com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.execute(MongoClientDelegate.java:216)
at com.mongodb.client.internal.MongoClientDelegate$DelegateOperationExecutor.execute(MongoClientDelegate.java:185)
at com.mongodb.DBCollection.createIndex(DBCollection.java:1698)
at com.mongodb.DBCollection.createIndex(DBCollection.java:1683)
at com.mongodb.gridfs.GridFS.<init>(GridFS.java:109)
at play.modules.morphia.MorphiaPlugin.initMorphia_(MorphiaPlugin.java:483)
at play.modules.morphia.MorphiaPlugin.onApplicationStart(MorphiaPlugin.java:608)
at play.plugins.PluginCollection.onApplicationStart(PluginCollection.java:603)
at play.Play.start(Play.java:557)
at play.Play.init(Play.java:325)
at play.server.Server.main(Server.java:162)
5、 编写代码测试查询已配置路由
public static void qichachaTest(String id) {
Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd HH:mm:ss").serializeNulls().create();
Logger.info("id:"+id);
Logger.info("ds.toString()"+ds().toString());
Query<ComDetails> query = ds("bid_data").createQuery(ComDetails.class);
query.filter("comId =", id);
List<ComDetails> list = query.asList();
if(list.size() > 0) {
renderJSON(gson.toJson(list.get(0)));
}else {
ComDetails cd = null;
renderJSON(gson.toJson(cd));
}
}
6、
结果
标签:play,java,mongodb,查询,CreateIndexesOperation,operation,com From: https://blog.51cto.com/u_16199760/6947942