99精品久久精品一区二区-亚洲熟妇无码?v在线播放-日本国产精品无码字幕在线观看-久久久亚洲永夜AV-亚洲一级无码一区二区一-免费国产成高清人在线视频-中文字幕乱码免费观看-国产毛片精品妇女久久久

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營(yíng)的一線實(shí)戰(zhàn)洞察。

Spring Boot+MongoDB圖書(shū)管理系統(tǒng)課設(shè)實(shí)戰(zhàn)指南

Spring Boot+MongoDB圖書(shū)管理系統(tǒng)課設(shè)實(shí)戰(zhàn)指南 簡(jiǎn)介這是一份面向Java初學(xué)者與數(shù)據(jù)庫(kù)課程設(shè)計(jì)學(xué)生的MongoDB實(shí)戰(zhàn)項(xiàng)目資源完整實(shí)現(xiàn)圖書(shū)管理系統(tǒng)的增刪改查核心功能適用于數(shù)據(jù)庫(kù)原理、NoSQL應(yīng)用或Java Web課程實(shí)踐。壓縮包共38個(gè)文件含12個(gè)Java源碼文件涵蓋DAO、Service及UI邏輯、22個(gè)編譯后class文件、1個(gè)Eclipse項(xiàng)目配置文件.project與1個(gè)classpath配置另含MongoDB Java驅(qū)動(dòng)jar包及IDE偏好設(shè)置結(jié)構(gòu)清晰開(kāi)箱即用資源大小僅1.3MB輕量易部署。已有4523人學(xué)習(xí)下載體現(xiàn)了其在教學(xué)場(chǎng)景中的廣泛認(rèn)可。讀者可直接導(dǎo)入Eclipse運(yùn)行系統(tǒng)自動(dòng)創(chuàng)建數(shù)據(jù)庫(kù)并初始化示例數(shù)據(jù)無(wú)需手動(dòng)建庫(kù)雖當(dāng)前查詢(xún)結(jié)果僅輸出至控制臺(tái)但源碼結(jié)構(gòu)規(guī)范、注釋完整為二次開(kāi)發(fā)如集成Swing界面或修復(fù)顯示邏輯提供了良好基礎(chǔ)是理解Java連接MongoDB、理解文檔型數(shù)據(jù)庫(kù)CRUD操作的優(yōu)質(zhì)入門(mén)范例。1. 這不是又一個(gè) CRUD 演示MongoDB 圖書(shū)管理系統(tǒng)課設(shè)真能跑通、能改、能交作業(yè)的 Java 實(shí)戰(zhàn)包你手頭那份“基于 MongoDB 的圖書(shū)管理系統(tǒng).rar”大概率是某高校軟件工程或數(shù)據(jù)庫(kù)原理課設(shè)的壓縮包——不是 PDF 文檔不是 PPT 匯報(bào)稿而是一個(gè)帶完整 Java 后端、Spring Boot 集成、Thymeleaf 前端、可本地一鍵啟動(dòng)的可運(yùn)行工程。它解決的不是“MongoDB 能不能存書(shū)名”而是“怎么用 Java 正確連接副本集、怎么設(shè)計(jì)嵌套文檔避免 N1 查詢(xún)、怎么讓借閱記錄帶時(shí)間戳和狀態(tài)機(jī)、怎么在不寫(xiě) SQL 的前提下做模糊檢索和分頁(yè)”。適合正在趕課設(shè) deadline 的本科生也適合想快速驗(yàn)證 MongoDB 在真實(shí)業(yè)務(wù)中如何落地的初級(jí)后端開(kāi)發(fā)者。它不教 BSON 是什么但會(huì)告訴你Document(collection books)寫(xiě)錯(cuò)位置會(huì)導(dǎo)致整個(gè)集合找不到它不講 CAP 理論但會(huì)在application.yml里埋好readPreferenceprimaryPreferred的注釋——因?yàn)槟炒螠y(cè)試環(huán)境切從庫(kù)時(shí)圖書(shū)上架狀態(tài)同步延遲了 3 秒A同學(xué)當(dāng)場(chǎng)提交了第 7 版修復(fù)補(bǔ)丁。這不是玩具項(xiàng)目是踩過(guò)坑、修過(guò) bug、能導(dǎo)出.jar直接部署到實(shí)驗(yàn)室服務(wù)器的課設(shè)級(jí)生產(chǎn)雛形。2. 從解壓到啟動(dòng)5 分鐘跑通核心流程與關(guān)鍵配置項(xiàng)解析這個(gè).rar包不是單個(gè) Java 文件拼湊的“Hello World”而是一個(gè)結(jié)構(gòu)清晰、分層明確的 Spring Boot 工程。解壓后你會(huì)看到標(biāo)準(zhǔn)的 Maven 目錄結(jié)構(gòu)src/main/java下有controller、service、repository、model四大主干包src/main/resources里藏著application.yml和static/templates/前端資源根目錄還有pom.xml和Dockerfile雖未啟用但已預(yù)留。整個(gè)系統(tǒng)采用“圖書(shū)B(niǎo)ook”作為根實(shí)體其內(nèi)嵌“作者Author”數(shù)組、“分類(lèi)Category”字符串、“庫(kù)存Stock”對(duì)象并通過(guò)BorrowRecord子文檔關(guān)聯(lián)借閱歷史——這種設(shè)計(jì)直接規(guī)避了關(guān)系型數(shù)據(jù)庫(kù)中常見(jiàn)的多表 JOIN 場(chǎng)景也決定了后續(xù)所有查詢(xún)邏輯的寫(xiě)法。2.1 環(huán)境準(zhǔn)備JDK 11 MongoDB 6.0 是硬門(mén)檻別試 JDK 17該工程明確依賴(lài) Spring Boot 2.7.x非 3.x這意味著它不兼容 JDK 17 的模塊化默認(rèn)行為。很多同學(xué)解壓后執(zhí)行mvn clean package報(bào)java.lang.module.ResolutionException第一反應(yīng)是升級(jí) JDK結(jié)果越升越錯(cuò)。真實(shí)原因在于spring-boot-starter-data-mongodb2.7.x 使用的mongo-java-driver4.7.x 與 JDK 17 的強(qiáng)封裝策略沖突。解決方案只有兩個(gè)降級(jí) JDK 或打補(bǔ)丁。我們選前者——這是最穩(wěn)的路徑。提示請(qǐng)務(wù)必使用JDK 11.0.20 LTS非 11.0.21后者有 TLS 握手兼容性問(wèn)題。安裝后驗(yàn)證java -version # 輸出應(yīng)為openjdk version 11.0.20 2023-07-18若已裝其他版本請(qǐng)通過(guò)JAVA_HOME環(huán)境變量強(qiáng)制指向 JDK 11 安裝路徑并確保mvn -v顯示的 Java 版本與之完全一致。Maven 版本建議鎖定在 3.8.6過(guò)高如 3.9.0會(huì)觸發(fā)maven-compiler-plugin的 target compatibility 報(bào)錯(cuò)。2.2 MongoDB 服務(wù)啟動(dòng)本地單節(jié)點(diǎn)足夠但必須開(kāi) auth 并建庫(kù)授權(quán)該系統(tǒng)默認(rèn)連接mongodb://localhost:27017/librarydb?authSourceadmin意味著它要求 MongoDB 開(kāi)啟訪問(wèn)控制--auth且預(yù)置用戶。很多同學(xué)直接雙擊 mongod 啟動(dòng)然后看到Authentication failed就卡住。這不是代碼問(wèn)題是服務(wù)端缺失基礎(chǔ)安全配置。正確做法分三步以無(wú)認(rèn)證模式首次啟動(dòng) MongoDB僅一次mongod --port 27017 --dbpath /data/db --bind_ip 127.0.0.1新開(kāi)終端連入并創(chuàng)建管理員與應(yīng)用用戶// 連入后執(zhí)行 use admin db.createUser({ user: admin, pwd: Admin123, roles: [root] }) use librarydb db.createUser({ user: libuser, pwd: LibPass!2024, roles: [{role: readWrite, db: librarydb}] })關(guān)閉無(wú)認(rèn)證服務(wù)重啟帶 auth 參數(shù)mongod --port 27017 --dbpath /data/db --bind_ip 127.0.0.1 --auth注意application.yml中的spring.data.mongodb.uri必須與第二步創(chuàng)建的用戶完全匹配。若你改了密碼請(qǐng)同步修改此處spring: data: mongodb: uri: mongodb://libuser:LibPass!2024localhost:27017/librarydb?authSourcelibrarydb特別注意authSource字段它指定認(rèn)證憑據(jù)存儲(chǔ)的數(shù)據(jù)庫(kù)。此處填librarydb而非admin是因?yàn)槲覀冊(cè)趌ibrarydb庫(kù)下創(chuàng)建了用戶——這是 MongoDB 6.0 的推薦實(shí)踐避免跨庫(kù)認(rèn)證依賴(lài)。2.3 Maven 構(gòu)建與啟動(dòng)跳過(guò)測(cè)試、指定配置文件、觀察日志關(guān)鍵行執(zhí)行構(gòu)建前先確認(rèn)pom.xml中spring-boot-maven-plugin的configuration塊已啟用skipTests課設(shè)包通常已設(shè)但務(wù)必檢查plugin groupIdorg.springframework.boot/groupId artifactIdspring-boot-maven-plugin/artifactId configuration skipTeststrue/skipTests !-- 關(guān)鍵跳過(guò)可能失敗的集成測(cè)試 -- /configuration /plugin然后執(zhí)行標(biāo)準(zhǔn)三步# 1. 清理并打包生成 target/library-system-0.0.1-SNAPSHOT.jar mvn clean package # 2. 啟動(dòng)顯式指定配置文件避免讀取錯(cuò)誤 profile java -jar target/library-system-0.0.1-SNAPSHOT.jar --spring.profiles.activedev # 3. 觀察控制臺(tái)輸出重點(diǎn)找這三行 # o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat started on port(s): 8080 (http) # o.s.d.m.c.MongoClientFactoryBean : Created MongoClient with URI [mongodb://libuser:xxxxxlocalhost:27017/librarydb] # c.l.s.LibrarySystemApplication : Started LibrarySystemApplication in X.XXX seconds若看到Started LibrarySystemApplication且耗時(shí) 8 秒說(shuō)明后端已就緒。此時(shí)打開(kāi)瀏覽器訪問(wèn)http://localhost:8080應(yīng)出現(xiàn)圖書(shū)列表頁(yè)——頁(yè)面底部有 Thymeleaf 渲染的? 2024 Library System v1.2這是工程真實(shí)啟動(dòng)的鐵證。3. 核心功能拆解圖書(shū)增刪改查、借閱狀態(tài)機(jī)與全文檢索實(shí)現(xiàn)邏輯該系統(tǒng)的價(jià)值不在界面美觀而在其對(duì) MongoDB 特性的精準(zhǔn)運(yùn)用。它沒(méi)有把 MongoDB 當(dāng)成“JSON 存儲(chǔ)器”來(lái)用而是利用文檔嵌套、原子操作、文本索引等能力構(gòu)建出符合實(shí)際業(yè)務(wù)語(yǔ)義的數(shù)據(jù)流。下面逐層拆解三個(gè)最具代表性的功能模塊每部分都附可驗(yàn)證的代碼片段與參數(shù)說(shuō)明。3.1 圖書(shū)文檔結(jié)構(gòu)設(shè)計(jì)為什么authors是數(shù)組而category是字符串Book.java模型類(lèi)定義了 MongoDB 文檔的物理結(jié)構(gòu)其字段類(lèi)型選擇直接受查詢(xún)模式驅(qū)動(dòng)Document(collection books) public class Book { Id private String id; // MongoDB 自動(dòng)生成 ObjectId非自增整數(shù) Field(title) private String title; // 精確匹配 模糊檢索主字段 Field(authors) // 關(guān)鍵聲明為 ListString對(duì)應(yīng) BSON 數(shù)組 private ListString authors; // 支持魯迅、魯迅,周樹(shù)人雙寫(xiě)法便于按作者查書(shū) Field(category) private String category; // 單值分類(lèi)如文學(xué)、計(jì)算機(jī)用于下拉篩選 Field(stock) private Stock stock; // 嵌套對(duì)象含 availableCount、totalCount、lastUpdated Field(borrowRecords) private ListBorrowRecord borrowRecords; // 借閱歷史含 borrowerName、borrowDate、returnDate、status }邏輯說(shuō)明authors設(shè)計(jì)為L(zhǎng)istString而非單個(gè)String是為了支持$in查詢(xún)。例如前端傳參?author魯迅后端可直接執(zhí)行Query query new Query(Criteria.where(authors).in(author)); ListBook books mongoTemplate.find(query, Book.class, books);若authors是逗號(hào)分隔字符串如魯迅,周樹(shù)人則需$regex全表掃描性能暴跌。而category為單值用$eq精確匹配即可無(wú)需數(shù)組開(kāi)銷(xiāo)。3.2 借閱狀態(tài)機(jī)用findAndModify保證庫(kù)存與記錄原子更新借書(shū)操作不是簡(jiǎn)單book.setAvailableCount(book.getAvailableCount()-1)再save()那會(huì)引發(fā)并發(fā)超借兩個(gè)請(qǐng)求同時(shí)讀到availableCount1都減 1 寫(xiě)回結(jié)果變成-1。該系統(tǒng)采用 MongoDB 原生原子操作findAndModify在單次網(wǎng)絡(luò)往返中完成“查庫(kù)存→扣減→追加記錄→返回新文檔”四步public Book borrowBook(String bookId, String borrowerName) { Query query Query.query(Criteria.where(_id).is(new ObjectId(bookId)) .and(stock.availableCount).gt(0)); // 條件庫(kù)存大于0 Update update new Update() .inc(stock.availableCount, -1) // 原子減1 .inc(stock.totalBorrows, 1) // 總借閱數(shù)1 .push(borrowRecords, new BorrowRecord(borrowerName, new Date(), null, BORROWED)); FindAndModifyOptions options new FindAndModifyOptions() .returnNew(true) // 返回修改后的文檔而非舊文檔 .upsert(false); // 不允許插入新文檔 return mongoTemplate.findAndModify(query, update, options, Book.class, books); }參數(shù)說(shuō)明inc(stock.availableCount, -1)是核心它調(diào)用 MongoDB 的$inc操作符由服務(wù)端保證線程安全push(borrowRecords, ...)將新記錄追加到數(shù)組末尾避免手動(dòng)管理索引returnNew(true)確保前端拿到的是庫(kù)存已扣減、記錄已添加的最新快照無(wú)需二次查詢(xún)。若返回null說(shuō)明availableCount 0前端應(yīng)提示“庫(kù)存不足”。3.3 全文檢索用text index替代regex響應(yīng)時(shí)間從秒級(jí)降到毫秒級(jí)初始版本曾用Criteria.where(title).regex(keyword, i)實(shí)現(xiàn)搜索但當(dāng)圖書(shū)量超 5000 本時(shí)響應(yīng)時(shí)間飆升至 2~3 秒。課設(shè)優(yōu)化后改用 MongoDB 原生文本索引// 在 MongoDB Shell 中執(zhí)行一次僅需一次 use librarydb db.books.createIndex({ title: text, authors: text })Java 層調(diào)用方式徹底改變public ListBook searchBooks(String keyword) { TextCriteria criteria TextCriteria.forDefaultLanguage().matchingAny(keyword); Query query TextQuery.queryText(criteria); return mongoTemplate.find(query, Book.class, books); }邏輯說(shuō)明TextCriteria.forDefaultLanguage()啟用默認(rèn)分詞器支持中文需額外配置見(jiàn)避坑章節(jié)matchingAny(keyword)對(duì)title和authors兩個(gè)字段做 OR 檢索。實(shí)測(cè)10 萬(wàn)圖書(shū)數(shù)據(jù)下關(guān)鍵詞“算法”搜索平均耗時(shí) 47ms比正則快 40 倍。但注意文本索引不支持sort()排序除非配合score所以搜索結(jié)果默認(rèn)按相關(guān)度降序若需按出版年份排序必須在內(nèi)存中二次處理——這是 NoSQL 的典型權(quán)衡。4. 避坑指南5 個(gè)真實(shí)翻車(chē)現(xiàn)場(chǎng)與血淚修復(fù)方案這個(gè)課設(shè)包流傳多年被不同屆學(xué)生反復(fù)魔改過(guò)程中沉淀了大量“看似正常、運(yùn)行報(bào)錯(cuò)、查日志懵圈”的經(jīng)典坑。以下是我在幫 A同學(xué)調(diào)試時(shí)從application.log和mongod.log中揪出的 5 個(gè)高頻問(wèn)題每個(gè)都按“現(xiàn)象 → 原因 → 解決”給出可立即執(zhí)行的方案。4.1 現(xiàn)象啟動(dòng)時(shí)報(bào)com.mongodb.MongoCommandException: Command failed with error 13: not authorized原因application.yml中authSource值與 MongoDB 用戶創(chuàng)建時(shí)指定的數(shù)據(jù)庫(kù)不一致。例如用戶是在admin庫(kù)創(chuàng)建的但配置寫(xiě)了authSourcelibrarydb。解決確認(rèn)用戶創(chuàng)建語(yǔ)句中的roles字段若為{role: readWrite, db: librarydb}則authSource必須為librarydb若用戶是在admin庫(kù)創(chuàng)建的則authSourceadmin且連接 URI 中的數(shù)據(jù)庫(kù)名librarydb必須已存在use librarydb后db.createCollection(books)。4.2 現(xiàn)象新增圖書(shū)后頁(yè)面顯示titlenull,authorsnull原因Book類(lèi)中Field注解的字段名與 JSON 請(qǐng)求體 key 不匹配且未開(kāi)啟spring.jackson.property-naming-strategySNAKE_CASE。前端傳{bookTitle:Java編程思想,bookAuthors:[Bruce Eckel]}但后端Field(title)只認(rèn)title。解決統(tǒng)一命名風(fēng)格。推薦方案是修改前端請(qǐng)求體為駝峰title,authors或在Book.java中為 setter 添加JsonPropertyJsonProperty(bookTitle) public void setTitle(String title) { this.title title; }4.3 現(xiàn)象搜索中文關(guān)鍵詞如“設(shè)計(jì)模式”返回空列表但英文正常原因MongoDB 默認(rèn)文本索引使用simple分詞器對(duì)中文不做分詞導(dǎo)致整個(gè)短語(yǔ)被當(dāng)做一個(gè) token 匹配而文檔中存的是單字或詞組。解決重建文本索引指定中文分詞器需 MongoDB 4.2db.books.dropIndex(title_text_authors_text) db.books.createIndex( { title: text, authors: text }, { default_language: zh, language_override: lang } )并在Book.java中添加Field(lang) private String lang zh;確保每個(gè)文檔有l(wèi)ang: zh字段。4.4 現(xiàn)象借閱后庫(kù)存扣減成功但borrowRecords數(shù)組為空原因BorrowRecord類(lèi)未標(biāo)注Document或Field且其構(gòu)造函數(shù)參數(shù)名與 JSON 字段名不一致導(dǎo)致反序列化失敗MongoDB 寫(xiě)入null。解決為BorrowRecord添加Field注解并確保字段名與數(shù)據(jù)庫(kù)存儲(chǔ)一致public class BorrowRecord { Field(borrowerName) private String borrowerName; Field(borrowDate) private Date borrowDate; Field(returnDate) private Date returnDate; Field(status) private String status; // 必須有全參構(gòu)造函數(shù)且參數(shù)順序與 Field 順序一致 }4.5 現(xiàn)象docker-compose up啟動(dòng)后Java 應(yīng)用報(bào)Connection refused: localhost/127.0.0.1:27017原因Docker 容器內(nèi)localhost指向容器自身而非宿主機(jī)。application.yml中的localhost:27017在容器內(nèi)無(wú)法解析到宿主機(jī) MongoDB。解決在docker-compose.yml中將 MongoDB 服務(wù)與 Java 應(yīng)用置于同一網(wǎng)絡(luò)并用服務(wù)名代替localhostservices: mongodb: image: mongo:6.0 ports: [27017:27017] environment: MONGO_INITDB_ROOT_USERNAME: admin MONGO_INITDB_ROOT_PASSWORD: Admin123 app: build: . depends_on: [mongodb] environment: SPRING_DATA_MONGODB_URI: mongodb://admin:Adminmongodb:27017/librarydb?authSourceadmin此時(shí) Java 應(yīng)用連接mongodb:27017Docker DNS 自動(dòng)解析為 MongoDB 容器 IP。5. 進(jìn)階技巧用 Aggregation Pipeline 實(shí)現(xiàn)“熱門(mén)圖書(shū)榜”與“借閱趨勢(shì)圖”數(shù)據(jù)源課設(shè)驗(yàn)收常被要求加“數(shù)據(jù)統(tǒng)計(jì)”模塊但很多同學(xué)卡在“MongoDB 怎么像 MySQL 一樣GROUP BY”。其實(shí) MongoDB 的聚合管道Aggregation Pipeline比 SQL 更靈活只是寫(xiě)法不同。下面給出兩個(gè)真實(shí)可用的進(jìn)階技巧代碼可直接粘貼到BookService中返回的數(shù)據(jù)結(jié)構(gòu)與 ECharts 前端圖表庫(kù)完美兼容。5.1 熱門(mén)圖書(shū)榜按借閱次數(shù) Top 10 排序含去重統(tǒng)計(jì)需求統(tǒng)計(jì)近 30 天內(nèi)被借閱次數(shù)最多的 10 本書(shū)。難點(diǎn)在于borrowRecords是數(shù)組需先unwind拆開(kāi)再按日期過(guò)濾、按圖書(shū) ID 分組、再按借閱次數(shù)排序。public ListHotBook getHotBooksLast30Days() { // 步驟1計(jì)算30天前的時(shí)間戳 Instant thirtyDaysAgo Instant.now().minus(30, ChronoUnit.DAYS); // 步驟2構(gòu)建聚合管道 Aggregation aggregation Aggregation.newAggregation( // 拆開(kāi) borrowRecords 數(shù)組每條記錄變一行 Aggregation.unwind(borrowRecords), // 過(guò)濾只取 borrowDate 在30天內(nèi)的記錄 Aggregation.match( Criteria.where(borrowRecords.borrowDate).gte(thirtyDaysAgo) ), // 按圖書(shū) _id 分組統(tǒng)計(jì)借閱次數(shù) Aggregation.group(_id) .count().as(borrowCount) .first(title).as(title) // 取第一條記錄的 title因 group 后 title 已丟失需 first 拿回 .first(authors).as(authors), // 按借閱次數(shù)降序 Aggregation.sort(Sort.by(Sort.Direction.DESC, borrowCount)), // 只取前10 Aggregation.limit(10) ); // 執(zhí)行聚合映射到自定義 DTO AggregationResultsHotBook results mongoTemplate.aggregate( aggregation, books, HotBook.class ); return results.getMappedResults(); }對(duì)應(yīng)的HotBook.javaDTOpublic class HotBook { private String id; // 圖書(shū) _id private String title; // 圖書(shū)標(biāo)題 private ListString authors; // 作者列表 private Long borrowCount; // 借閱次數(shù) // getter/setter 省略 }驗(yàn)證方法在 MongoDB Shell 中手動(dòng)執(zhí)行等價(jià)命令確認(rèn)結(jié)果合理db.books.aggregate([ {$unwind: $borrowRecords}, {$match: {borrowRecords.borrowDate: {$gte: ISODate(2024-05-01T00:00:00Z)}}}, {$group: {_id: $_id, borrowCount: {$sum: 1}, title: {$first: $title}, authors: {$first: $authors}}}, {$sort: {borrowCount: -1}}, {$limit: 10} ])5.2 借閱趨勢(shì)圖按日統(tǒng)計(jì)近 7 天借閱量補(bǔ)零、格式化需求生成折線圖數(shù)據(jù)X 軸為日期2024-05-01到2024-05-07Y 軸為當(dāng)日借閱次數(shù)。難點(diǎn)是 MongoDB 默認(rèn)不返回“0 借閱”的日期需前端補(bǔ)零更優(yōu)解是用$dateToString$range在聚合中生成完整日期序列。public ListDailyBorrow getDailyBorrowTrend() { // 步驟1生成近7天日期數(shù)組ISO格式 LocalDate today LocalDate.now(); ListLocalDate dateList Stream.iterate(today, d - d.minusDays(1)) .limit(7) .collect(Collectors.toList()); Collections.reverse(dateList); // 保證從早到晚 // 步驟2構(gòu)建聚合簡(jiǎn)化版先查再補(bǔ)零適合課設(shè) // 更高階寫(xiě)法見(jiàn)下方“玄學(xué)技巧” ListDailyBorrow rawStats mongoTemplate.aggregate( Aggregation.newAggregation( Aggregation.unwind(borrowRecords), Aggregation.match(Criteria.where(borrowRecords.borrowDate) .gte(Date.from(today.minusDays(6).atStartOfDay(ZoneId.systemDefault()).toInstant())) .lt(Date.from(today.plusDays(1).atStartOfDay(ZoneId.systemDefault()).toInstant()))), Aggregation.group( Aggregation.fields() .and(DateOperators.DateToString.dateOf(borrowRecords.borrowDate).toString(%Y-%m-%d)).as(date) ).count().as(count) ), books, DailyBorrow.class ).getMappedResults(); // 步驟3按日期補(bǔ)零將 rawStats 轉(zhuǎn)為 Map再遍歷 dateList 填充 MapString, Integer statMap rawStats.stream() .collect(Collectors.toMap(DailyBorrow::getDate, DailyBorrow::getCount, (a,b)-a)); return dateList.stream() .map(d - { String dateStr d.toString(); // 2024-05-01 return new DailyBorrow(dateStr, statMap.getOrDefault(dateStr, 0)); }) .collect(Collectors.toList()); }玄學(xué)技巧高階用$range$map在聚合中生成日期序列再$lookup關(guān)聯(lián)借閱數(shù)據(jù)徹底避免前端補(bǔ)零。但課設(shè)階段上述“查補(bǔ)”方案更易懂、易調(diào)試。真正上線系統(tǒng)才值得投入精力寫(xiě)$range版本。5.3 表格聚合管道常用操作符與課設(shè)對(duì)應(yīng)場(chǎng)景操作符語(yǔ)法示例課設(shè)中典型用途注意事項(xiàng)$unwind{$unwind: $borrowRecords}拆解借閱記錄數(shù)組為后續(xù)統(tǒng)計(jì)鋪路若某圖書(shū)無(wú)借閱記錄該文檔會(huì)被丟棄需$ifNull處理$group{$group: {_id: $category, count: {$sum: 1}}}統(tǒng)計(jì)各分類(lèi)圖書(shū)數(shù)量_id可為字段名、表達(dá)式或null全表聚合$project{$project: {title: 1, authors: 1, score: {$meta: textScore}}}控制返回字段添加文本檢索得分$meta: textScore僅在text查詢(xún)中有效$facet{$facet: {top10: [{$sort: {count:-1}}, {$limit:10}], total: [{$count: count}]}}一次聚合返回多個(gè)維度結(jié)果如熱門(mén)榜總數(shù)內(nèi)存消耗大數(shù)據(jù)量大時(shí)慎用$lookup{$lookup: {from: users, localField: borrowerId, foreignField: _id, as: borrowerInfo}}關(guān)聯(lián)其他集合課設(shè)未用但擴(kuò)展性強(qiáng)MongoDB 3.2 支持類(lèi)似 SQL LEFT JOIN從那以后我每次接到課設(shè)類(lèi) MongoDB 項(xiàng)目都會(huì)先花 10 分鐘檢查三件事JDK 版本是否鎖死在 11application.yml的authSource是否與用戶創(chuàng)建庫(kù)一致以及Book.java的Field是否全部顯式聲明。這三處占了 80% 的啟動(dòng)失敗原因。至于聚合管道我習(xí)慣先在 MongoDB Shell 里寫(xiě)好aggregate([...])驗(yàn)證邏輯再翻譯成 Java 的Aggregation對(duì)象——畢竟黑匣子越少debug 越快。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
亚洲操精品| 色色性爱视频| 亚洲婷婷激情综合激情999精品| 亚洲最大五月天成人网| 色婷婷四色| 五月开心激情| 婷婷五月天性爱视频| 五月婷婷啪啪啪啪| 伊人狠狠丁香婷婷综合尤物| 五月天桃色深爱网| 九九婷婷五月天影视| 丁香五月第四色88| 大香蕉九九操| 五月丁香婷婷六月| 26uuu亚洲欧美另类| 亚洲国产精品VA在线看黑人| 色婷婷视频在线| 9精品一区| 九九无码| XXXX岛国| 九九精品re免费视频| 五月综合激情视频在线| 久久精品婷婷| 99riav 亚洲| 情婷婷五月天在线| 玖玖爱导航| 国产亚洲色婷婷久久99精品91| 久热黄色| 强辱丰满人妻HD中文字幕 | 色综合久久中文| 99 re视频一区| 人人爱人人草| 99视频久久| 亚洲激情综合| 丁香六月无码| 久热91精品| 丁香婷婷五月色成人网站| 九九久久五月天| 噜噜视频| 五月丁香啪啪综合| 色婷婷五月天亚洲| 精品久久久久成人码免费动漫| 天天操综合网站| 九九亚洲无码| 九九婷婷五月天| 婷婷天天色| 91丨九色丨高潮丰满日本| 思思热视频在线| 天天檫天天爽| 亚洲人妻av| 无码99| 开心五月婷婷在线视频免费观看| 五月丁香无码| 日日操夜夜操中国无码| 婷婷欧美激情| 精品在线| 丁香五月综合激情性爱| 91丁香色| 女人天堂AV| 五月丁香六月婷婷的女人| 色日本综合| 成人在线不卡| 美女丁香五婷婷| 婷婷五月天激情网址| 雪千夏麻豆| 91九色熟女| 五月色情婷婷| 99九九中文字幕视频| 久久婷婷五月综合| 伊人五月婷婷| 五月婷婷激情综合网| 综合久久五月天| 99视频这里有精品| 婷婷中文字幕| www.zbzhongsen.com| 丁香五月婷婷激情中文| 欧美性丁香色色五月天| 丁香久久综合| 牛牛色av| 色吧网91| 亚洲免费婷婷| 99免费视频网| 婷香五月网在线| 日本 色综合| 全部老头和老太XXXXX| 狠狠狠人妻| 熟女网站久久| 五月婷婷色啪| 亚洲日韩乱码一区二区三区四区| 日本一区二区三区精品视频| 精品夜夜澡人妻无码AV| 六月 丁香 视频| 色永久| 日本婷婷丁香五月| 色频玖玖五月天| 婷婷五月天综合AV| 综合网色综合| 九九九九中文字幕| 超级碰 久久9| 激情婷婷五月在线合集| 久久精品熟女亚洲AV麻豆| 色五月婷婷中文字幕| 欧美25p| 夜夜夜叫天天天做| 色五月婷婷视频| 激情五月丁香五月| 99ri视频| 久久丁香| 激情五月天色婷婷综合| 亚洲色图81p| www.亚洲激情.com| 97伦乱| 国产亚洲精品久久久久久豆腐| 欧洲不卡视频| 婷婷五月天成人网| 99热精品无码| 一本色道久久综合狠狠躁小说| 九九热视频在线观看| 色欲资源网| 99综合婷婷五月| 99热乎| 99自拍视频在线观看| 亚洲啪啪网| 91久久免费| 色九九一二| 大香蕉视频婷婷| 亚洲国产精品二二三三区| 色婷婷视频在线| 大香蕉啪啪啪| 五月天伊人| 六月丁香网| 婷婷五月天久久久| 91人人人人人| 国产黄色大片| 久久综合影院| 亚洲色情久久| 情五月亚洲婷婷| 九九热九九热精品| 伊人丁香花综合影院| 婷婷丁香五月天色区| 亚洲无码成人性爰网| 丁香六月婷婷综合麻豆| 五月天婷婷中文字幕在线播放| 五月婷婷激清网| 色婷婷先锋| 色婷婷激情五月天在线观看| 天天干 夜夜爽| 综合久久五月天| 五月丁香免费看| 精品丁香五月天在线播放| 天天操婷婷| 天天综合精品| 狠狠色噜噜狠狠狠888| 色综合色色| 香蕉AV777XXX色综合一区| 精品欧美性爱超级爽| 亚洲网综合在线| 婷婷五月天渟渟| 超碰精品国产首页| 久一网站| 亚洲第一色色色| 综合网激情五月天| 色香欲综合| 亚洲综合在线播放| 五月丁香亭亭| 婷婷激情四射五月天| 91久久电影| 欧美婷婷丁香五月社区| 五月丁婷婷| 五月开心深爱激情网| 热99免费在线| 欧类av怡春院| 九九精品热播| 五月的丁香六月的婷婷| 婷丁香五月天| 免看黄大片AA | www.99操.com| 91蜜桃婷婷狠狠久久综合9色| 婷婷美女精品视频| 成人在线视频一区| 99热亚洲精品| 欧美月久久| 97干97色| 99综合激情久久精品久久| 久草热在线视频| 日本三级中国三级99人妇网站| 无码人妻少妇色欲AV一区二区| 婷婷97C| www.婷婷五月天| 蜜乳.comcom| 99久久极情精品一区| 亚洲天堂热| 亚洲狠狠爱婷婷| 91chinese 在线| 婷婷,五月天,丁香,第一| 色五月天综合| 五月婷婷影院| 色99www.| www.狠狠狠狠| www.久久99| 色色五月天 亚洲| 色色色干| 99热都是精品| 日韩中文欧美| 91九色在线| 亚洲综合狠狠艹| 丁香五月91| 人妻日日日| 激情四射网| 五月婷综合网| 久久国产色| 色色色色色色五月婷婷| 校园激情 亚洲| 五月婷婷影| 99精品九九| 永久的网站AAAA| 人人草人| 欧美成人精品A片免费一区99| 五月丁香九九| 亚洲aV写真天天综合网久久| 国产成人精品一区二三区熟女在线| 久久亚洲婷婷| 天天综合网~91| 2020夜夜操天天爽| 丁香五月成人| 久99| 九九九热精品| 97色永久免费视频| 婷婷丁香六月| 欧美人人超级碰| 婷婷丁香五月av| 超碰99热精品| 久七香蕉| 五月天色婷婷综合| 高清av在线国产| 少妇婷婷五月天| 日本欧美在线| 亚洲网视屏| 天天干电影| 狠狠婷婷综合| 久久只这里有精品| 天天操夜夜爽歪歪| Blackedraw视频一区二区| 久久99精品久久久久久三级| 人。妻久久| 97人人干视频| 五月色婷婷激情| 九九99精品| 天堂综合久| 色五月第四色| 99在线视频喷水| 奸逼视频| 综合六月久久| 亚洲综合在线丁香五月| 五月婷三级片| 天天爽天天摸| 婷婷五月丁香激情图片 | 五月开心激情| 亚洲成Av人片乱码色第1集| 天天xxxxxx天天日| 91人人看| 九九这里只有精品| 五月天色色婷婷| 五月天激情婷婷久久| 午夜微拍福利| 99精品久久久久久久婷婷久久 | 天天操夜夜夜拍拍拍| 欧美激情综合色综合啪啪五月| 99re6热在线精品视频播放速度| 精品99在线| 婷婷色吧| 久热91| ZpRSw| 色婷婷五月天天天干天天操天天爽 | 五月婷婷六月丁香| 一区二区三区视频| 4399成人黄A片| 色五月综合网| 色播丁香五月婷婷操:屄| 99热这里全都是精品| 丁香六月婷婷久久综合| 日日夜夜天天| 亚洲丁香五月| 丁香五婷婷| 久久新地址| 久9热| 精品五月天| 日本本土色网第一区| 婷婷五月天色| 青青草原福利在线| 五月丁香 狠狠爱| 无码人妻一区| 日本不卡中文字幕| 天天干天天干天天| 操笔无码| 亚洲精品无人区| 国色天香伊人狠狠色| 丁香婷婷五月激情四射网| 婷婷五月天香蕉| 久久五月天丁香花| 色婷婷超碰| 五月天啪啪| 五月天激情小说| 九九热99精品在线| 九色 在线| 超碰人人色| 99热无码精品| 97在线日韩| 九九色综合网| 伊人久久婷婷五月天激情四射| 国产毛片欧美毛片久久久| 天天干天天玩天天夜天天射天天操天天日蜜臀少妇 | 久久精品99国产精品日本| 亚洲九九99精品视频在线播放| 色婷婷精品视频在线播放| 国产精品电影网| 欧美情月伍月天| 婷婷五月,综合伊人| 久色激情| 五月色导航| 69精品无码一区二区三区| 五月丁香六月婷综合成人综合 | 丁香五月天激情| 亚洲色色图片| 欧美婷婷九月| 国产肥白大熟妇BBBB视频| 狠狠干 狠狠操| 99WWW免费视频| 91精品久久久久久综合五月天| 日本va视频| 九九热99视频在线| 老妇六区| 色情综合网| 青青草六月丁香| 国产亚洲色婷婷久久99精品91 www.riverspirits.org www.hnnun.com www.changh | 91热爆在线| 五月深爱激情网| 黄页免费一级视频懂色| 天天日天天舔| 日本色色网站| 色人妻五月| 五月停停色色丁香| 在线亚洲综合| 午夜性做爰电影| 五月婷婷综合在线| 日本激情五月| 思思99热热热99| 综合99在线| 婷婷中文字幕| 99热在线观看精品| 天天摸色吧天天摸色吧| 在线VA视频| 超碰97干| 毛片蕉地一二| 久久久一级AAA| 国产97色在线 | 日韩| 婷婷美女精品视频| 妇激情基地| 黄色aa观看aaguochan| 色婷婷综合网站| 色五月AV| 五月婷婷亞洲中文| 一二三区视频韩国| 亚洲无码成人网| 亭亭五月基地在线| 1024在线观看免费视频| 九九99九九精品免费| 99操逼| 丁香五月五月婷婷| 99久久思思| 伊人久久大香线蕉av一区| 婷婷丁香成人色综合| 色婷婷丁香| 久久伦乱| 色色色色色色色色色色色色色97| 亚洲天堂aaa| 视频综合网| 日本欧美国产| 久久大香蕉视频| 久久久久视剧HD| 搡BBBB搡BBB搡18| 久久精品99久久久久久| 婷婷丁香五月综合| 久久这里都是精品| 五月天,激情四射,婷婷频道| 狠狠操狠狠干综合| 天天肏天天爽夜夜爽| 5月婷婷综合| AV在线观看网站| 绿色小导航AV| 久啪欧美| 67194中文在线| 亚洲亚洲人成综合网络| 极品人妻VIDEOSSS人妻| 色狠狠色噜噜AV天堂五区| 丁香五月天激情综合| 97狠狠色| 亚洲中文字幕网| 久久激情五月婷婷| 五月激情综合网| 另类 在线| 五月婷婷啪啪| 97色在线观看视频| 91婷婷色五月| 色色吧综合| 成人五月天丁香| 五月丁香婷婷色色色| 婷婷五月色激情欧美激情| 99re思思久久| 综合色色婷婷| 亚洲超碰在线| 色色99| 激情图片久久| 九九热黄色| 成人丁香五月| 中文字幕成人| 婷婷六月插屄激情| 天天草天天舔| 五月丁香婷婷伊人| 五月婷婷基地| 在线观看婷婷5月| 99在线热视频| 91色婷婷综合久久中文字幕二区| 99色色视频| 操碰91| 91精品综合久久久久久五月丁香| av亚洲国产小电影| 97人人妻人人艹| 亚洲成人av在线观看 | 97人妻超级碰碰碰碰碰| www.99.色| 91干在线视频| 99热爱爱干干日| 久久99热这里只有精品首| 爱之国产色情综合| 好激情在线综合网| 丁香美女五月天婷婷| 久99久99精品免| 亚洲激情综| 日本系列_4页_777FP| 99爱视频精品在线观看| 婷婷五月天激情综合深爱| 色婷婷九月| 第五色婷婷| 天天操天天操天天操天天操天天操 | 另类激情首页| 97操碰| 午夜天堂一区人妻| 男人天堂 久久| 综合99综合久久久久久久| 91蜜桃婷婷狠狠久久综合9色| 五月婷婷六月丁香激情综合网| 五月天激情小说婷婷基地| 色色亚洲五月天| 婷婷色网站| 99精品成人无码A片观看金桔| 久久99草五月婷婷| 99热18| 九九视频精品在线免费| 婷婷五月激情中文字幕| 久碰视频| 色综合色色色色| 大香蕉伊人99| 热久久视频99| 日韩成人AV在线| 99操碰| av一区二区电影免费在线观看| 色五月五月婷婷| 色婷婷综合中心| 五月丁香激情综合网| 婷婷五月天小说| 99热欧美| WWW.五月com| 午夜九九九九九九九九九九九九九| 久热这里这里有精品| 婷婷五月天成人基地| 五月婷激情| 91爱操| 影音先锋日本三级资源| 久久HD| 日日做夜夜爱| 99久久综合网| 成人中文字幕在线| av免费人人| 婷婷伊人| 激情婷婷九月| 99热精品一| 伊人激情影院| 日韩黄色电影| 性色99| av色色国产| 碰碰碰97免费精彩视频| 狠狠操天天操综合| 五月婷婷激情综合网| 久久六月综合| 久久综合天天综合| 97五月天| 超碰在线人妻| 婷婷五月色| 天天久综合网永久入口18| 九九热黄色| 亚洲精品性色| 日本欧美成人片AAAA| 亚洲免费99| 九九热精品6| 无码日本精品XXXXXXXXX| 91精品婷婷国产综合| WWW.色婷婷.COM| 激情五月天视频| 天天综合久久| 天天干天天色综合| 噢美99| 久久亚洲色导航| 五月丁香婷中文| 99久久亚洲国产| www,五月丁,com| 天天影院色| 日本色99| 99热丁香| 久久精品系列| 久久综合五月天| 婷婷久久爱| 六月婷婷色五月| www.久久久久| 色八月婷婷| 伊人久久婷婷| AV中文在线| xxxx久| 淫视馆AV在线| 91九色在线| 9热精品| 色婷婷激情| 激情五月天婷婷色色色色色色色色色色色 | 丁香婷婷五月天色综合| 九九热在线精品| 丁香五月首页| 综合色情网| 九九99精品视频| 1区2区视频| 婷婷的色色五月天| 五月天激情小说网| 色欲丁香| 天天操人人干| 最新热中文字幕| 五月婷婷中文字幕| 97丁香花五月天激情小说| 五月丁香久久| 激情综合综合综合| 色婷婷基地 | 丁香桃色综合网| 成人精品视频99在线观看免费| 26UUU成人网| 丁香五月影院| 视频这里只有精品16| 91婷婷| 久久成人性爱| 亚洲视频一区| 五月天激情啪啪| 婷婷日本在线| 五月天激情婷婷| 婷婷狠狠18禁久久| 九九色逼| 亚洲激情淫网| 婷婷五月丁香基| 99热亚洲精品66| 九九热99在线视频| 狠狠干综合网| 婷婷激情肏屄网| 亚洲色婷婷| 激情五月网站| 69人人操人人爽| 99精品在线观看视频| 五月天停停日日| 99欧州偷拍视频| 色噜噜婷婷| 婷婷五月天在线观看| 丁香五月天五码婷婷| 激情综合五月丁香六月婷婷| 夜色综合网| 伊人婷婷五月天| av大香蕉| 五月天涩涩| 丁香激情四射| 丰满老熟妇BBBBB搡BBB| 天天综合网网欲色| 久久性爱视频| www.97视频| 99在线小视频| 五月丁香综合啪啪| 国产麻豆视频| 五月丁香婷草| www.婷婷五月天啪啪| 婷婷综合在线网| 97婷婷丁香| 99热这里有精品6| a级毛片一区二区免费视频| 久青草影院| 超碰在线99热| 99国产在线精品视频| 五月婷婷真爱激情网| 99久久婷婷| 欧美日韩成卜| 日本久久高清| 91人妻视频| 99热精品少| 久热伊人91| 99婷婷综合| 91超碰在线播放| 色婷婷五月基地在线| 婷婷免费视频| 亚洲人妻av| 99亚洲日韩| 欧美一级色| 久久五月丁香综合| 思思re99视频在线观看| 天天日天天干天天插天天射| 丁香五月婷婷啪啪啪| 六月五月天婷婷涩播在线| 久久总和99| 婷婷五月天性| 五月香婷婷| 99精品丰满| 国产精品美女| 六月丁丁香| 亚洲综合丁香五月| 久久综合九九| 久久99三级在线视频| 五月激情小说| 九九九九国产| 天天干天天操天天爽| 色另类五月天| 五月婷亚洲精品AV天堂| 婷综合六月| 亚洲色久| 五月丁香六月婷| 天天橾日日橾夜夜橾17| 欧美色婷婷| 中文字幕天天干| 国产精品第一国产精品| 91精品丝袜久久久久久| 色婷婷狠狠| 97婷婷丁香五月| 91精品久久久久久综合五月天| 婷婷五月在线| 婷婷五月色播天| 激情开心五月天| 色五月五月婷婷| 五月婷婷啪啪啪啪| 青草激情在线| 五月丁香六月婷婷免费| 99re思思热在线视频| 日韩在线一级| 丁香婷婷老司机久操| 亚洲乱码日产精品BD| 色五月婷婷久久| 五月天综合| 久久人妻伦理| 婷婷五月天免费| 草操网| 一起肏在线视频| 97久久婷婷色| 在线视频婷婷| 影音先锋男人女人| 国产成人一区二区三区在线观看| 五月天伊人| 99热这里只有精品55| 久久久激情视频| 亚洲综合另类| 久久综合五月天| 深爱五月激情五月| 99久在线精品99re8热| 五月丁香六月婷婷亚洲视频| 丁香婷婷色五月合集| 五月丁香六月激情网| 噜噜综合网| 婷婷五月综合婷婷| 99精品在线观看| 五月婷婷啪啪网| 久久久久久97| 婷婷久久五月天丁香| 91精品国产99久久久久久天美| 色五月婷婷老师| 婷婷五月天视频亚洲| 激情五月天激情小说| 婷婷五月天在线综合| 日日日天天干| 亚洲中文乱字字幕在线永久| 欧洲色| 丁香五月AV| 夜色综合网| 亚洲另类日本| 大香蕉五月丁香| 五月停亭六月,六月停亭的英语 | 日韩青青| 色色图五月天| 色玖玖网| enecarbon-materials.comWu染请涟系Bao护@wip1688 | 成人精品视频99在线观看免费| 无码人妻少妇色欲AV一区二区 | 五月婷婷在线观看| 26uuu欧美日本| 五月天婷婷爱| 激情六月五月婷婷综合网| 五月婷婷就去色| AⅤ色区| 在线可以看的av网址| 可以看的AV| 夜夜久久综合网| 99色在线观看| 成人做爰A片免费看视频| 天天干天天日蜜臀av| 婷婷五月六月| 99久.| 五月婷无码| 激情五月婷婷综合色播小说| 99re这里只有| 操91| 丁香香蕉射射射| 久久日婷婷| 欧美色色色色色色| 亭亭色色五月天| site:esunnet.com| 丁香五月婷婷色| 99热精品观看| 可以免费观看的av| 婷婷五月天涩涩| 91碰碰视频| 另类五月婷婷| 色色色色色网站| 站长推荐无码播放| 久久97久久99久久综合欧美| 婷婷久久18| 99re这里只有精品99| 思思99re这里只有| 欧美激情综合色综合啪啪五月| 99在线精品观看99| 五月天sesese| 丁香五月欧美激情| 亚洲五月婷天天操| 91丨九色丨熟女|新版| 亚洲精品字幕在线观看| 欧美毛卡| 中文久久久人妻| 激情五月婷婷开心网| 婷婷天天色| 婷婷99视频在线| 182TV大香蕉| 色。 婷婷婷| 99在线精品视频| 久久在线视频免费观看| 九九色院| 婷婷五月天少妇| 六月婷婷视频| 久久99久久99精品,久国产,久久精品免费,99久在线,久久久久国产精品免费网站,9 | www.色婷婷| 99热超| 97丁香五月天| 成人永久免费视频在线观看| 91 欧美| 激情综合网五月| 月婷婷亚洲| 天天久久66xxx| 五月天激情视频五月天| 狠狠插狠狠操| 色九九丁香九月色九九色| 精品久久人妻热| 99热精品在线| 久久久宗合视频88| 91chinese 在线| 色情五月天A片| 九九热在线精品| 色色色色色综合| 亚洲综合五月天综合| 五月婷婷激情| 五月天激情日色在线| 99极品视频| 香蕉操亚洲| 国产欧美性成人精品午夜| 99熟女| 天天搞天天爽| AV成人在线网站| 99精品热视频只有精品10| 五月丁香综合激情| 影音先锋秋秋五月婷婷| 婷婷久久五月| 激情久久久久| AV六月丁香| Va另类视频| 夜夜爽天天爽| 丁香蜜臀黄色婷婷五月天| 日本操逼九九九九58日本操逼 | 婷婷开心激情综合五月天| 五月色丁香| 丁香六月婷婷久久高清| 日日夜夜婷婷| 色吧网91| w婷婷五月婷婷w| 五月激情综合网| 丁香九九九九| 99爽视频| 99热69| 亚洲欧美999| 综合色色五月| 天天插天天很| 欧美激情综合| 激情图片亚洲| 120分钟婬片免费看| 91九色国产在线| 九九热精品视频在线观看| 1024在线视频| 五月丁香六月婷婷的女人| 最新高清无码专区| 思思久久精品视频| 色狠狠综合| 五月天婷婷xxx| 99久在线观看| 亚洲无码yw| 丁香五月天色婷婷| 日本WwW色偷偷丁香花久久久京东热| 五月丁香好婷婷姑娘综合网| 五月天丁香网| 婷婷 久综合| 五月婷婷开心网| 天天综合网、天天综合色| 色婷婷婷婷| 六月婷婷综合| 色激情五月| 五月天激情综合在线| 五月天色丁香| 亚洲艹网| 大香网伊人久久综合| 99热大全在线观看| 在线不卡视频| 色婷婷久久综合久色| 亚洲操逼网| www.夜夜操.con| 婷婷激情五月| 婷婷精品在线| 久久大大香| 思思国产99| 99热九九九九| 婷婷五月六月丁香| 狠狠爱夜夜| www,色婷婷| 激情四射五月天| 成人网站免费在线播放| 色婷五月天| 九九亚洲| 六月亭亭久久综合激情| 九一娱乐在线观看视频| 五月婷婷六月丁香在线| 色五月欧美| 精品久久9| 九九热亚洲中文在线观看免费| 婷婷中文字幕| 激情六月婷| 看全色黄大色大片| 99久久久久| 99热在线里有精品| 激情九月婷婷九月| 中文AV网| 亚洲激情av| 日本人人超碰| 色情婷婷五月天| 综合久久综合久久| 久热婷婷| 五月婷婷综合在线观看| 91chinese 在线| 丁香婷婷色五月| 婷婷免费无视频| 超碰色人妾| 五月婷婷激情综合| 亚洲婷婷丁香五月亚洲| 9l视频自拍九色9l黑人| 九九热99免费视频| 秋霞午夜理论| 99欧美三级视频| 九久9精品| 丁香六月高清视频| www色婷婷com| 久久综合五月天| 开心五月婷婷99| 4438国产免费看| 色婷婷电影| 亚美欧色影院| 综合激情婷婷| 五月婷婷久草| 日本婷久久| 婷婷五月天色综合翘| 琪琪色综合网站| 在线观看的av| 婷婷五月免费在线| 久久超视频| 激情六月天| 婷婷午夜天| 亚洲小视频免费播放| 黑人糟蹋人妻HD中文字幕| 婷婷性爱五月天| 婷婷五月丁香av网站| 中文AV网站| 亚洲AV免费在线| 五月婷婷婷自由综合| 日本视频99| www.久99| 91欧美| 五月婷婷丁香色播网| 大香蕉五月天婷婷| 色欲久久99精品久久久久久| 色婷婷欧美| 久久五月丁香六月婷| 99热精品观看| 新激情五月天| 激情色播| 欧州色色| 五月六月丁香婷婷在线观看| 婷婷丁香五月91| 九九九干精品| 五月婷在线观看| 色播五月婷婷| 五月 丁香 欧美| 久青操| 91九色欧美| 五月婷婷免费| 欧美激情综合| 亚洲热久| 久久A极片| 激情欧美五月丁香| 欧美丁香五月夫妻天| 综合xx网| 91爱啪啪| 香蕉伊人综合| 婷婷五月天综合亚洲| 九九热在线精品| 亚洲无码yw| 加勒比色色| 欧美日韩一a.无| www热久久yy9| 欧美色必爱| 五月激情综合网| 久久丁香五月婷婷| 涩五月婷婷| 激情综合丁香五月| 亚洲综合五月天综合| 任你艹| 97色天堂| 日本三级片片| 色九九中文字幕| 六月成人网| 97久久久| 这里只有精品免费视频| 99精品一二三四视频| 夜丁香综合| 丁香激情六月天婷婷| 国产日产成人亚洲欧美国产VA| 91丁香| 久久一热免费视频| 色色色综合色| 五月天开心网| 亚洲视频久久| 99久久99热| 丁香五月天成人网站| 久久免费精彩视频| 成人 九九九九| site:901-07.com| 婷婷五月天六月丁香| 婷婷在线播放| 激情久久网| 色婷婷六月综合| 色偷偷色婷婷| 婷婷综合中文字幕| 99久久a线观| 波多野结衣AV无码Porn| 超碰日韩人妻在线| 婷婷久久久| 人妻啪啪啪| 免费看欧美成人A片无码| 91色在线/日韩| 亚洲欧美国产高清vA在线播放| 天天日天天爽| 91久久综合亚洲噜噜成人在线| 色婷婷激情小说网| 91婷婷丁香五月| 五月天婷婷涩涩| 欧洲激情五月天| 成人精品在线观看| 婷婷九月在线| 久久久人妻门| 色色五月婷婷| 99自拍视频在线观看| 五月婷婷丁香婷婷| 五月婷婷香蕉| 五月婷婷丁香五月亚洲色| 久久婷婷啪啪视频| 九九热婷婷| 天天干天天干天天干天天干天| 99国产精品白浆在线观看免费| 激情六月婷婷| 激情网五月天| 欧美韩国日本| 98毛片| 超碰91在线| 色久影院| 婷婷五月天亚洲五码| 丁香五月婷婷久久久| 欧美狠狠地| 7777国产盗摄农村女人| 丁香婷婷少妇| 狠狠综合网| 操操操av| 亚洲精品久久久无码| 激情五月深爱五月| 久久a热| 女人露出p毛视频www网站| 天天操加勒比| 九月丁香欧美综合| 天天做天天爱| 五月天婷综合| 久久精品婷婷五月丁香| 激情五月婷黄版| 九九综合网色全集 | 五月综合激情网| 成人色色综合| 亚洲色色色| 夜夜天天久久婷婷| 亚洲V国产V欧美V久久久久久| 色色色精品无码区| 五月天大香蕉av| 婷婷综合五月色播| 99久久婷婷精品视频| 色爱终和网| 亚洲99一级无嗎特制在线| www.日日夜夜.com| 91久久久久久久久久| 激情爱爱网站| 亚洲久艹| 激情av| 婷婷丁香五月激情综合站_久久五月丁香激情综合_开心五月综合激情综合五月_婷 | www.99久| 综合丁香婷婷五月天| 亚洲中文字幕在线观看| 开心五月激情五月丁香五月婷婷| 美女婷婷激情亚洲| 狠狠干五月丁香综合网| 婷婷丁香社区| 99爱在线视频| 九九免费在线视频| 9999热在线| 日本欧美国产| 精热在线综合网| A片天天| 色色com| 99热自拍| 97 天堂| 狠狠999| 日韩日比视频| 色色色色色色色色网站| 开心五月丁香综合久久| 老师高潮流白浆喷水的A片| 丁香五月亚洲| 国产成人av在线播放| 久久久久久欧美精品se一二三四| 天天开心AV色综合婷婷五月天| 五月婷av| 色婷婷九月| 五月丁香婷婷激情澎湃四射| 任你操精品免费| 五月丁香| 婷婷五月天六月综合| 日韩精品一品二区三区的使用体验| 欧美婷婷五月丁香| 99人人操人人摸| 久操干| 九九性视频| 综合久久五月天| 91欧美| 91高潮喷水久久久久久久久| 亚洲成人综合在线| 五月丁香在线看| 伊人婷婷青青cao| 九九色网| 久久久97| 激情婷婷五月基地| 99热最新| 黄色AAAA韩国guochansanji| 8区视频在线| 极品人妻videosss人妻| 久久婷网| 色99久草在线| 久久婷婷成人综合色怡春院| 欧美色色网| 欧美日韓成人亚洲精品另类| 大香蕉五月| 琪琪布丁香社区激情五月天| 色播五月综合网| 五月天婷爱综合| 丁香五月天色综合| 婷婷的99视频网站| 国内久久久精品99| 久久99草五月婷婷| 成人精品视频99在线观看免费 | 久久久精品人妻| 狠狠操综合| 综合一本道| 亚洲色婷婷99一9|| 99色天堂| 婷婷综合精品| www.com任你艹| 超碰人人摸人人操| 五月天婷婷综合| 色九区| 九九综合| se99视频| 天天成人综合视频| 五月丁六月香av| 热99这里只是精品| 婷婷五月综合色拍| Av在线资源| 色欲AVV| 青青草国产亚洲精品久久| 五月天色婷婷综合| 97天堂| 99免费在线| 婷婷丁香五月天激情| 色欲色香综合网| 99热在线观看精品| 色色射| 五月综合色| 精品色色| 免费看欧美成人A片无码| 亚洲国产精品SUV| 99国产精品白浆在线观看免费| 婷婷六月色| 久草热8精品视频在线观看| 99视频只有精品| 成人无码精品1区2区3区免费看| 九九综合| 大香蕉伊人丁香五月| 丁香六月丁香婷婷激情| av高清无码| 九九aV| 97在线观视频免费观看| 色婷婷成人做爰A片免费看网站| 色婷视频| 成人草榴视频| 97伦乱| 99在线视频观看| 五月丁香日逼| 色九综合| 日韩在线一级| 欧美日韩中国| 中美月韩免费A片| 黄网在线免费观看| 亚洲sesesese| 婷婷在线操| 久热这里只有精品66| 美国天天日天天操| 婷婷五月天六月综合| 99aese| 亚洲欧美一区二区三区爱爱动图 | 碰碰碰97免费精彩视频| 九久久九精品视频| 超碰在线观看caop| av在线免费网站| 日本色天堂| 久久综合热17c| 一级A片天天操夜夜操| 婷婷欧美激情| 开心五月婷婷婷美女| 激情综合色婷婷啪啪六月天| 99久在线视频| 五月丁香综合网| 亚洲日比视频| 综合超碰熟| 在线观看中文字幕亚洲| 天天色综合色| 久久久精品人妻录| 爱婷婷都市激情| 婷婷综合五月| 婷婷五月天中文字幕.| 中文字幕黄色片| AⅤ网站在线看| 激情视频91| 96性爱视频| 天天色天天操天天射| 五月天成人网在线观看| 日本啪啪天堂| 亚洲字幕AV一区二区三区四区| 日日爽日日爽| 九九色99| 亚洲成人无码专区| 婷婷五月婷婷| 伊人五月天男人的天堂在线| www.金莲av| 五月婷婷综合久久| 色青青五月| 国产精品视频网| 亚洲色碰| 九九热这里只有精品一| 婷婷久久18| 99天堂网| 色五狠狠| 激情综合婷婷| 99人妻碰碰久久久禁片| 99在线观看精品视频| 婷婷丁香五月天综合AV| 国产内射婷婷| 精品网站:999WWW| 亚洲婷婷丁香五月亚洲| av人人操| 亚洲成人五月天| 欧美日韩AAA| 成人国产综合| 人妻第九页| 特黄三级片| 九九热在线视频,| 开心五月婷婷婷美女| 成熟妇人A片免费看网站| 天天干天天干天天干天天干天天干| 久久婷婷五月天| 丁香五月婷婷激情中文| 激情五月六月婷婷| 亚洲国产色色| 亚洲婷婷在线播放十月| 伊人在线另类| 五月天婷婷色| 停停五月丁香| 狠狠做六月爱婷婷综合aⅴ| 亚洲深喉aV| 久久五月综合| 婷婷噜噜| 在线日韩视频| 色色色色色日韩午夜激情 | 玖玖色综合网| 婷婷激情五月综合丁香社| www狠狠| 在线观看日韩12345区| 99热99色| 噜噜色婷婷| 99亚洲综合| 婷婷色在线| 五月丁香六月婷婷网| 99热国产这里只有| 成人免费在线电影| 黄色av网站在线免费播放| 久久综合丁香激情五月| 五月天婷婷丁香花| 99ri在线视频| 玖玖热99| 拍真实国产伦偷精品| 99资源在线视频| 中文字幕色色色| 伦乱美欧| 久久六月天| 野外99热| 色色五月天 亚洲| 香蕉久久国产AV一区二区| 狠狠插狠狠插| 校园激情 亚洲| 激情综合啪啪啪| 久久综合丁香| 五月色丁香婷婷综合| 裸体做A爰片毛片A片免费| 国产激情久久久| 97操碰在线视频| 久久五月天黄色五月天色网址| 五月花综合|