我有以下文件。我需要用下面的集合与requestParam系统匹配,如果requestParam与电子邮件系统匹配,则需要获得结果值。上下快速移动系统
这里请求Param是系统
{
"_id" : ObjectId("5f0890e870e631865877e"),
"user" : "testuser",
"Email" : "testuser@sample.com",
"Batch Systems" : [
"STAR",
"STORY",
"ITEMS",
],
"Email Systems" : [
{
"Bob" : {
"System" : "Bob",
**"result"** : true
}
},
{
"Wild" : {
"System" : "Wild",
"result" : true
}
},
{
"CRaft" : {
"System" : "Craft",
"result" : false
}
}
]
}
我已经尝试了下面的语法,得到了java.lang.ClassCastExctive:com.mongodb.client.internal.Aggregate IterableImpl不能转换为java.util.ArrayList。有人能告诉我下面的代码有什么问题,并帮助我与synatx。
MongoDatabase database = this.mongoClient.getDatabase(this.database);
MongoCollection<Document> user = database.getCollection(COLLECTION);
Document userQuery = new Document();
String searchString = new String(system);
AggregateIterable<Document> user1 =users.aggregate((List<? extends Bson>) new Document("$project",
new Document("Email Systems",
new Document("$match",
new Document("Email Systems.BobSystem",searchString)))));
用户。aggregate()
返回一个AggregateIterable
而不是ArrayList
,因此出现错误。您可以从AggregateIterable
创建一个迭代器
,然后将文档添加到数组列表
。
MongoDatabase database = this.mongoClient.getDatabase(this.database);
MongoCollection<Document> user = database.getCollection(COLLECTION);
Document userQuery = new Document();
String searchString = new String(system);
AggregateIterable aggregateIterable = users.aggregate(Collections.singletonList(new Document("$project", new Document("Email Systems", new Document("$match", new Document("Email Systems.Bob.System", searchString))))));
// Create an iterator from the iterable
Iterator iterator = aggregateIterable.iterator();
ArrayList<Document> documents = new ArrayList();
// Then iterate over the iterator
while (iterator.hasNext()) {
documents.add((Document) iterator.next());
}
有关每个驱动程序版本的详细答案,请参阅MongoDB aggregation with Java driver
用户返回的对象。aggregate()是可聚合的。ArrayList未实现此接口,因此强制转换失败。尝试将其转换为AggregateIterable或AggregateIterableImpl。
我只是想在java中将一些类对象插入到优先级队列中。但是出现错误“com.java.split.MyComp不能转换为java.util.Collection”。我尝试了不同的选项,将不同的参数传递给, 代码: 导入java。util。比较器;导入java。util。优先队列; 但都没有起作用。我有个例外, 线程“main”java中出现异常。lang.ClassCastException:com
在我的项目中,我有这样一个枚举: 我有这个代码: 我有个例外 myMap由数据库中的数据填充,知道它是SQL Server数据库,并且从数据库返回的myKey在数据库中是tinyint类型。 你能告诉我我做错了什么吗?谢谢 当做
我有一个Springbean(),它扩展了一个抽象类()。 导致ClassCastExcture的子类变体: 在我重写子bean中父类的公共非抽象方法之前,一切都正常。之后,当我试图创建该bean的实例时,会抛出一个ClassCastException。 由返回的Bean对象是一个类实例(通过调试器检查)。为什么将对象转换为其抽象的父类不起作用?因此,如果没有在中实现的,一切都很好。有人能告诉我这
例外情况: java.lang.ClassCastException:com.interconnect.library.gcm.util.checkplayServices(util.java:96),com.interconnect.library.gcm.regiseter.handleRegister(regiseter.java:53),com.interconnect.library.g
问题内容: 尝试将结果集强制转换为映射类时,我收到了hibernate类的类强制转换异常…我能够查看返回的结果集中的数据…但是它以Object []的形式返回我可以将Object []设置为List …我可以正确地进行hibernate映射吗?我从查询中获取了正确的数据,但映射不正确… 映射 映射类 参加班 主要 问题答案: 对于测试,我建议您在产生类强制转换异常的语句周围放置一个try-catc
调用AffineTransform: 它驻留在自定义形状类(YingYang)中。 当我进行调用时,当我试图从绘图面板或在类本身(如果我将返回类型更改为YingYang)中将它转换回一个YingYang时,我会得到一个类转换异常。 java.lang.ClassCastException:java.awt.Geom.Path2D$Double不能强制转换为Animation.Yingyang 任何