欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

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

 更新時間:2021年01月11日 10:00:47   作者:辛格愛編程  
這篇文章主要介紹了關(guān)于MongoTemplate通過id查詢?yōu)閚ull的問題,本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下

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)勢,簡而言之:如果重啟進程,那么緩存依然有效

配置:

spring.data.mongodb.uri=mongodb://test:123456@${ipAddr}:27017/mrqc?connectTimeoutMS=10000&authSource=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)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • MongoDB創(chuàng)建和查詢視圖的方式

    MongoDB創(chuàng)建和查詢視圖的方式

    本文整理mongodb的官方文檔,介紹mongodb的視圖創(chuàng)建和查詢,在Mongodb中,允許使用兩種方式來創(chuàng)建視圖,本文結(jié)合實例代碼給大家介紹的非常詳細,感興趣的朋友一起看看吧
    2023-12-12
  • MongoDB聚合group的操作指南

    MongoDB聚合group的操作指南

    這篇文章主要給大家介紹了關(guān)于MongoDB聚合group的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-04-04
  • mongodb eval 執(zhí)行服務(wù)器端腳本

    mongodb eval 執(zhí)行服務(wù)器端腳本

    在MongoDB的服務(wù)器端可以通過db.eval函數(shù)來執(zhí)行javascript腳本,如我們可以定義一個javascript函數(shù),然后通過db.eval在服務(wù)器端來運行!我們前面其實也接觸過在服務(wù)器段運行一個預(yù)定義的javascript腳本的情況,如在$where查詢,執(zhí)行mapreduce任務(wù)等。
    2015-05-05
  • mongodb中oplog介紹和格式詳析

    mongodb中oplog介紹和格式詳析

    Oplog 是用于存儲 MongoDB 數(shù)據(jù)庫所有數(shù)據(jù)的操作記錄的(實際只記錄增刪改和一些系統(tǒng)命令操作,查是不會記錄的),有點類似于 mysql 的 binlog 日志,這篇文章主要給大家介紹了關(guān)于mongodb中oplog和格式的相關(guān)資料,需要的朋友可以參考下
    2021-07-07
  • 關(guān)于mongodb初始化以及配置方式

    關(guān)于mongodb初始化以及配置方式

    這篇文章主要介紹了關(guān)于mongodb初始化以及配置方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-07-07
  • MongoDB和mysql的區(qū)別對比分析

    MongoDB和mysql的區(qū)別對比分析

    MongoDB?是一個基于分布式文件存儲的數(shù)據(jù)庫,而MySQL?是一款安全、跨平臺、高效的,并與?PHP、Java?等主流編程語言緊密結(jié)合的數(shù)據(jù)庫系統(tǒng),本文重點給大家介紹MongoDB和mysql的區(qū)別,需要的朋友可以參考下
    2023-01-01
  • Mongodb增加、移除Shard Server實例

    Mongodb增加、移除Shard Server實例

    這篇文章主要介紹了Mongodb增加、移除Shard Server實例,shard服務(wù)器(Shard Server).Shard服務(wù)器是存儲實際數(shù)據(jù)的分片,每個Shard可以是一個mongod實例,也可以是一組mongod實例構(gòu)成的Replica Sets,需要的朋友可以參考下
    2015-01-01
  • MongoDB 事務(wù)支持詳解

    MongoDB 事務(wù)支持詳解

    這篇文章主要介紹了MongoDB 事務(wù)支持詳解的相關(guān)資料,需要的朋友可以參考下
    2022-12-12
  • MongoDB教程之基本管理命令

    MongoDB教程之基本管理命令

    這篇文章主要介紹了MongoDB教程之基本管理命令,本文講解了啟動和停止MongoDB、服務(wù)器狀態(tài)監(jiān)控兩部份內(nèi)容,需要的朋友可以參考下
    2015-05-05
  • MongoDB連接和創(chuàng)建數(shù)據(jù)庫的方法講解

    MongoDB連接和創(chuàng)建數(shù)據(jù)庫的方法講解

    這篇文章介紹了MongoDB連接和創(chuàng)建數(shù)據(jù)庫的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-03-03

最新評論