佳木斯湛栽影视文化发展公司

主頁 > 知識庫 > 關(guān)于MongoTemplate通過id查詢?yōu)閚ull的問題

關(guān)于MongoTemplate通過id查詢?yōu)閚ull的問題

熱門標(biāo)簽:百度競價排名 鐵路電話系統(tǒng) AI電銷 地方門戶網(wǎng)站 網(wǎng)站排名優(yōu)化 服務(wù)外包 呼叫中心市場需求 Linux服務(wù)器

Mongo的優(yōu)勢

1. 它會把數(shù)據(jù)文件映射到內(nèi)存中,如果是讀操作,內(nèi)存中的數(shù)據(jù)起到緩存的作用,如果是寫操作,內(nèi)存還可以把隨機的寫操作轉(zhuǎn)換成順序的寫操作,總之可以大幅度提升性能。MongoDB并不干涉內(nèi)存管理工作,而是把這些工作留給操作系統(tǒng)的虛擬內(nèi)存管理器去處理,這樣做的好處是簡化了MongoDB的工作,但壞處是你沒有方法很方便的控制MongoDB占多大內(nèi)存,幸運的是虛擬內(nèi)存管理器的存在讓我們多數(shù)時候并不需要關(guān)心這個問題。

2. MongoDB的內(nèi)存使用機制讓它在緩存重建方面更有優(yōu)勢,簡而言之:如果重啟進(jìn)程,那么緩存依然有效

配置:

spring.data.mongodb.uri=mongodb://test:123456@${ipAddr}:27017/mrqc?connectTimeoutMS=10000authSource=admin

版本:

dependency>
 groupId>org.springframework.data/groupId>
 artifactId>spring-data-mongodb/artifactId>
 version>2.2.0.RELEASE/version>
/dependency>

錯誤實體類

MongoId設(shè)置為了String,需要設(shè)置為ObjectId類型

@Data
@Document("user")
public class User {
 @MongoId
 private String id;
 @Field("userName")
 private String userName;
}

正確實體類

@Data
@Document("user")
public class User {
 @MongoId
 private ObjectId id;
 @Field("userName")
 private String userName;
}

查詢語句,如果mongoId類型為String那么就查詢不出來,無論是直接使用
findById方法或者find(query)或者id傳ObjectId對象,都是查不出來的,開始還以為配置錯了,結(jié)果是因為Mongo的id都是ObjectId無法對應(yīng)上實體類中的String類型。改成ObjectId同樣的語句就可以查詢出來了

User user = mongoTemplate.findById(new ObjectId(userId),User.class, "user");

到此這篇關(guān)于關(guān)于MongoTemplate通過id查詢?yōu)閚ull的問題的文章就介紹到這了,更多相關(guān)MongoTemplate查詢?yōu)閚ull內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Spring Boot之搞定mongoTemplate的知識小結(jié)
  • Node.js使用MongoDB的ObjectId作為查詢條件的方法
  • PHP庫 查詢Mongodb中的文檔ID的方法
  • python操作mongodb根據(jù)_id查詢數(shù)據(jù)的實現(xiàn)方法
  • java查詢mongodb中的objectid示例

標(biāo)簽:崇左 銅川 仙桃 湘潭 黃山 蘭州 湖南 衡水

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《關(guān)于MongoTemplate通過id查詢?yōu)閚ull的問題》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    通河县| 仲巴县| 米脂县| 莱西市| 石城县| 屯昌县| 无极县| 崇礼县| 伊宁市| 临洮县| 合山市| 武强县| 嘉鱼县| 兰西县| 双流县| 杂多县| 如东县| 平江县| 福海县| 铁岭县| 云梦县| 资中县| 拉孜县| 左权县| 循化| 秦安县| 永宁县| 台江县| 西乌| 乐至县| 泰和县| 诏安县| 两当县| 洛扎县| 河南省| 哈巴河县| 抚宁县| 马公市| 岳西县| 天柱县| 宜兰市|