Javaドライバーを使用して、Springデータを通常のmongo永続性と混同しています。
Javaドライバーを使用してデータをmongoDBに直接永続化する場合は、永続化にmongoTemaplateクラスを使用せず、MongoClientクラスを使用することを除いて、これまでに示したようにBasicDBObjectを使用します。したがって、次のようになります。
MongoClient mongoClient = new MongoClient( "localhost" , 27017 );
DB db = mongoClient.getDB( "mydb" );
BasicDBObject o = new BasicDBObject();
o.set......
coll.insert(o);
ただし、spring-dataを使用してドキュメントを永続化しようとしている場合は、ドキュメントを表すJavaクラス(例:Person)を作成し、このクラスに@Document(collection ="person")で注釈を付けてから、mongoTemplateを使用する必要があります。 (これは、このエンティティを永続化するためのSpring-Data固有のクラスです。これは、JPA/hibernateを使用する場合と非常によく似ています。
したがって、次のようになります
@Document(collection="person")
public class Person {
private String fisrtName;
....
Relevant getters and setters
}
そして永続性
Person p = new Person();
p.setFirstName("foo");
p.setLastName("bar");
....
mongoTemplate.save(p);