我已经运行MongoDB服务器,创建test1数据库与集合称为拉链。 (取自http://media.mongodb.org/zips.json)。现在我想使用Morphia从我的应用程序中读取它。Morphia与MongoDB连接
以下吗啡教程(https://github.com/mongodb/morphia/wiki/GettingStarted): 我创建了maven项目,并且增加了依赖关系(https://github.com/mongodb/morphia/wiki/Dependencies)。现在我的项目只包含实体类和main。 实体类:
package com.mycompany.morphia;
import com.mongodb.Mongo;
import com.mongodb.MongoClient;
import java.io.IOException;
import org.mongodb.morphia.Datastore;
import org.mongodb.morphia.Morphia;
public class App
{
public static void main(String[] args) throws IOException
{
MongoClient m = new MongoClient("localhost", 27017);
Datastore ds = new Morphia().createDatastore(m, "test1");
MyEntity e = ds.find(MyEntity.class).get();
System.out.println(e.city.toString());
System.in.read();
}
}
package com.mycompany.morphia;
import com.sun.corba.se.spi.ior.ObjectId;
import org.mongodb.morphia.annotationsEntity;
import org.mongodb.morphia.annotations.Id;
@Entity
public class MyEntity {
@Id String _id; //maybe ObjectId ?
String city;
Object loc;
Integer pop;
String state;
}
和主类仍然在调试时我得到空。我不知道如何检查我是否连接到我的数据库,以及如何正确查询它。
1.我改变了ObjectId,没有改变。 2.我看到你写的软件包没有区别。 3. MyEntity e = ds.find(MyEntity.class).get();为空 有没有更多的想法? – Kula
我想你的意思是她应该使用'org.bson.types.ObjectId'来代替。 – evanchooly
Thx,错误的复制粘贴 – xeraa