0
我是mongodb初學者。使用java查詢mongodb文檔
我將ItemName和ItemCategory存儲爲文檔。使用Java我想找到在方法中傳遞的ItemCategory的所有ItemNames。
我試過下面的代碼,但它不工作。
public String[] generate(String category) {
MongoClient mongoClient;
String temp[] = new String[50001];
String[] prodName = {};
int i = 0, j = 0;
int k=0;
try {
mongoClient = new MongoClient("localhost", 27017);
DB db = mongoClient.getDB("test");
DBCollection coll = db.getCollection("products");
DBCursor cursor = coll.find();
BasicDBObject query = new BasicDBObject("ItemCategroy", category);
cursor = coll.find(query);
try {
while (cursor.hasNext()) {
temp[i++] = (String) cursor.next().get("ItemName");
}
for (k = 0; k < temp.length; k++) {
if (temp[k] == null) {
k++;
} else{
prodName[j++]=temp[k];
}
}
System.out.println("kkk"+k);
/* for (int j = 0; j < nodeNm.length; j++) {
System.out.println("printing in jsp " + nodeNm[j]);
} */
} finally {
cursor.close();
}
mongoClient.close();
} catch (UnknownHostException e) {
e.printStackTrace();
}
return prodName;
}
在這裏generate()
方法,我在一個陣列prodName
它返回經過category
並希望所有的ItemNames
。
請給予。
樣品文檔看起來喜歡 - '{ 「_id」:物件( 「528f37fdb55099000c5dfedd」), 「ITEMNAME」: 「項目1」, 「ItemCategory」: 「電子」, 「ItemSubCategory」: 「TV」, 「ItemBrand」:「Samsung」, 「ItemSize」:「20」, 「ItemPrice」:「7500」 }' –
沒問題,所以''ItemCategroy「'確實是一個錯字 - 修復它有幫助嗎? – chk