亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

有沒有一種簡單的方法可以使用 spring boot 從 mongodb 數據庫集合中查

有沒有一種簡單的方法可以使用 spring boot 從 mongodb 數據庫集合中查

FFIVE 2023-07-13 14:18:19
我正在構建一個應用程序,它將處理將大量數據插入到各種集合中,然后從 mongodb 數據庫中讀取它們。由于集合的數量將來會增加很多,并且文檔也會獲得新的密鑰,因此我想在沒有實體類的情況下實現我的代碼,因為每次進行新的集合/文檔更改時都需要更新和添加它們。我已使用“MongoTemplate”成功地將數據插入到所需的集合中,而無需實體類。mongotemplate.insert(map,"mycollection");mongotemplate.find(查詢,myentity.class,“mycollection”);我想要一個像這樣的方法: mongotemplate.find(query, "mycollection");
查看完整描述

2 回答

?
蠱毒傳說

TA貢獻1895條經驗 獲得超3個贊

看一下MongoDB Java 驅動程序。

你可以這樣做:

private List<Document> queryCollection(String collectionName) {

? ? final List<Document> results = new ArrayList<>();

? ? mongoDatabase.getCollection(collectionName).find(/*FILTER*/).into(results);

? ? return results;

}


查看完整回答
反對 回復 2023-07-13
?
炎炎設計

TA貢獻1808條經驗 獲得超4個贊

Query query = new Query();

query.addCriteria(Criteria.where("name").is("Eric"));

List<User> users = mongoTemplate.find(query, User.class);

還有其他查找方法,findOne、findById 等,具體取決于哪一種適合您的用例。


如果您不想使用 mongotemplate,則需要使用 BasicDBObject 來實現此目的。


DBCollection collection = database.getCollection("mycollection");

BasicDBObject query = new BasicDBObject();

query.put("mykey", "keyvalue");

DBCursor cursor = collection.find(query);

您將使用的依賴項是具有最新發行版本的 mongo java 驅動程序:


<dependency>

? ? <groupId>org.mongodb</groupId>

? ? <artifactId>mongo-java-driver</artifactId>

? ? <version>3.11.0</version>

</dependency>


查看完整回答
反對 回復 2023-07-13
  • 2 回答
  • 0 關注
  • 142 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號