在我的项目中,我创建了一个名为 ClickScoreTuple 的类,它扩展了 BasicDBObject。(否则会出现 Serielizable 问题)。
然后,我使用下面的代码插入 ClickScoreTuple
public void insertToMongodb(String q, ClickScoreTuple cs){
BasicDBObject doc = new BasicDBObject();
doc.put("query", q);
doc.put("clicks", cs);
coll.insert(doc);
}
并使用以下代码从 MongoDB 检索数据。
public ClickScoreTuple retrieveFromMongodb(String q){
BasicDBObject query = new BasicDBObject();
query.put("query", q);
DBCursor cursor = coll.find(query);
**ClickScoreTuple result = (ClickScoreTuple) cursor.next();**
cursor.close();
return result;
}
但是,我遇到了这样的问题:
Exception in thread "main" java.lang.ClassCastException: com.mongodb.BasicDBObject cannot be cast to ClickScoreTuple
at MongoDBManager.retrieveFromMongodb(MongoDBManager.java:50)
at UserLogHistoryProcessor.processLogHistory(UserLogHistoryProcessor.java:30)
at UserLogHistoryProcessor.main(UserLogHistoryProcessor.java:108)
有谁知道锄头来解决它?