如何使用java检索mongodb中文档字段的值列表?
我希望检索字符串数组或ArrayList(Java)中“comment”字段的值。请参阅图像链接或指定的以下mongodb条目:如何使用java检索mongodb中文档字段的值列表?,java,mongodb,Java,Mongodb,我希望检索字符串数组或ArrayList(Java)中“comment”字段的值。请参阅图像链接或指定的以下mongodb条目: { "_id" : ObjectId("56740295f0a1e82444261cd4"), "Title" : "Campus", "Description" : "Nice", "City" : "Delhi", "Venue" : "Paschim Vihar", "Lab" : "Lab1", "Tags" : [ "people", " buildi
{
"_id" : ObjectId("56740295f0a1e82444261cd4"),
"Title" : "Campus",
"Description" : "Nice",
"City" : "Delhi",
"Venue" : "Paschim Vihar",
"Lab" : "Lab1",
"Tags" : [ "people", " building" ],
"UploadDate" : ISODate("2015-12-18T12:56:51.589Z"),
"MediaCreationDate" : ISODate("0015-01-09T18:41:00Z"),
"Likes" : 0,
"Dislikes" : 0,
"Video Hash" : "56740295f0a1e82444261cd4157",
"Url" : "56740295f0a1e82444261cd4157",
"comments" : [ "Hello Sir", "Hello World" ]
}
只是个初学者。谢谢。首先,您需要添加应用程序mongodb驱动程序。 例如,对于maven:
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.1.0</version>
</dependency>
org.mongodb
mongo java驱动程序
3.1.0
然后您需要编写如下代码:
import static com.mongodb.client.model.Filters.*;
public class FindTest {
public static void main(String[] args) {
//Connect to your mongodb instance
MongoClient client = new MongoClient();
//Connect to your database
MongoDatabase db = client.getDatabase("try123");
//Connect to your collection
MongoCollection<Document> collection = db.getCollection("one");
//Execute query to database
List<Document> myDocs = collection.find(eq("Title", "Campus")).projection( Projections.include("comments")).into(new ArrayList<Document>());
//Print result
for (Document d : myDocs) {
ArrayList<String> comments = (ArrayList<String>)d.get("comments");
System.out.println(comments);
}
client.close();
}
}
导入静态com.mongodb.client.model.Filters.*;
公共类查找测试{
公共静态void main(字符串[]args){
//连接到您的mongodb实例
MongoClient=新的MongoClient();
//连接到您的数据库
MongoDatabase db=client.getDatabase(“try123”);
//连接到您的收藏
MongoCollection collection=db.getCollection(“一”);
//执行对数据库的查询
List myDocs=collection.find(eq(“Title”、“Campus”).projection(Projections.include(“comments”)).into(new ArrayList());
//打印结果
用于(文档d:myDocs){
ArrayList注释=(ArrayList)d.get(“注释”);
System.out.println(注释);
}
client.close();
}
}
不确定您需要帮助的确切位置。。读取数据或转换数据。要从数组转换为列表,请查看以下内容: