亚洲有码Av一区二区三区_国产高清啪啪免费视频_69色视频国产_国产成人人人爆出白浆_国产精品自在线拍国_一本久久伊人热热精品无码_午夜性刺激在线看免费带字幕_助力高品质欧美狂喷水_亚洲精品日韩无码_精品无码一区二区三区蜜臀_麻豆高清国产AV_熟妇人素无码中文字幕_亚洲a级片在线观看_国产欧美日韩三区_99国产成人高清在线观看

ARTICLE DETAIL

資訊詳情

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

蒼穹外賣(mài)復(fù)盤(pán):從訂單流轉(zhuǎn)到支付對(duì)接的Java后端實(shí)戰(zhàn)

蒼穹外賣(mài)復(fù)盤(pán):從訂單流轉(zhuǎn)到支付對(duì)接的Java后端實(shí)戰(zhàn) 2. 復(fù)盤(pán)蒼穹外賣(mài)知識(shí)點(diǎn)第一期做后端開(kāi)發(fā)的幾乎沒(méi)人不知道蒼穹外賣(mài)這個(gè)實(shí)戰(zhàn)項(xiàng)目。我當(dāng)年刷完它之后最大的感受不是“我會(huì)寫(xiě)接口了”而是終于明白了“一個(gè)真實(shí)的外賣(mài)系統(tǒng)到底是怎么從零到一被拆出來(lái)、做出來(lái)、然后扛住線上壓力的”。最近有不少同學(xué)問(wèn)我這個(gè)項(xiàng)目值不值得刷、該怎么刷所以我打算出幾期復(fù)盤(pán)把里面那些“文檔里不會(huì)寫(xiě)透”的知識(shí)點(diǎn)掰開(kāi)了聊一聊。先說(shuō)結(jié)論這個(gè)項(xiàng)目最核心的四個(gè)關(guān)鍵字是管理端、用戶端、訂單流轉(zhuǎn)、支付對(duì)接。這四個(gè)點(diǎn)基本涵蓋了Java后端面試?yán)锇俜种耸母哳l考點(diǎn)從基礎(chǔ)的MVC分層、MyBatis-Plus操作到稍微進(jìn)階一點(diǎn)的Redis緩存、Spring Cache、WebSocket再到真正能拉開(kāi)差距的Spring Task定時(shí)任務(wù)、微信支付流程項(xiàng)目里都有涉及。這一期我們先從宏觀架構(gòu)和數(shù)據(jù)庫(kù)設(shè)計(jì)講起慢慢往里鉆。1. 內(nèi)容整體設(shè)計(jì)與思路拆解1.1 為什么每個(gè)外賣(mài)項(xiàng)目都長(zhǎng)這樣如果你手頭有蒼穹外賣(mài)的源碼打開(kāi)之后第一反應(yīng)大概率是分模塊太多了。admin端、user端、common公共模塊三個(gè)大模塊堆在一起剛開(kāi)始很容易懵。但你別怕這種結(jié)構(gòu)恰恰是真實(shí)企業(yè)項(xiàng)目的縮影。你可以把這三層理解成一個(gè)餐廳的運(yùn)轉(zhuǎn)邏輯common模塊相當(dāng)于餐廳的“后廚標(biāo)準(zhǔn)操作規(guī)程”所有菜怎么做、配料怎么切標(biāo)準(zhǔn)都在這里admin模塊是“店長(zhǎng)后臺(tái)”管菜單、管員工、管營(yíng)業(yè)額user端是“顧客點(diǎn)餐小程序”用戶能看到什么菜、能下單、能催單。三者之間的依賴關(guān)系也很清晰user依賴commonadmin也依賴common但admin和user互不依賴。這種設(shè)計(jì)能帶來(lái)一個(gè)很實(shí)際的好處——改小程序邏輯的時(shí)候絕不可能影響到管理后臺(tái)反之亦然。如果你在一個(gè)工程里寫(xiě)過(guò)那種“五百個(gè)類(lèi)堆在一起”的代碼再回頭看你就會(huì)特別感激這種拆法。1.2 從零設(shè)計(jì)外賣(mài)系統(tǒng)先解決哪些問(wèn)題如果你要自己從零做一個(gè)外賣(mài)項(xiàng)目通常面臨的是下面這幾個(gè)問(wèn)題用戶身份怎么區(qū)分、菜品怎么分類(lèi)上架、購(gòu)物車(chē)怎么做、訂單狀態(tài)怎么流轉(zhuǎn)、超時(shí)未支付怎么處理。蒼穹外賣(mài)面對(duì)這些問(wèn)題的解法在業(yè)界其實(shí)是比較標(biāo)準(zhǔn)的方案業(yè)務(wù)問(wèn)題設(shè)計(jì)方案關(guān)鍵點(diǎn)用戶身份JWT登錄、雙端Token校驗(yàn)管理端與用戶端各自持有一套攔截器與登錄邏輯菜品展示分類(lèi)表與菜品表分離采用邏輯外鍵關(guān)聯(lián)方便后續(xù)擴(kuò)展口味、標(biāo)簽、起售停售狀態(tài)購(gòu)物車(chē)用戶維度持久化到數(shù)據(jù)庫(kù)不是Redis臨時(shí)緩存避免丟數(shù)據(jù)引發(fā)客訴訂單流轉(zhuǎn)狀態(tài)機(jī)機(jī)制待付款 → 待接單 → 待送達(dá) → 已完成各狀態(tài)之間有明確流轉(zhuǎn)條件超時(shí)訂單Spring Task定時(shí)掃描對(duì)待付款訂單做超時(shí)取消防止庫(kù)存與運(yùn)力被無(wú)效占用這些方案單拎出來(lái)看都是常規(guī)操作但把它們放在同一個(gè)業(yè)務(wù)閉環(huán)里協(xié)同工作你才能體會(huì)到“設(shè)計(jì)一個(gè)系統(tǒng)”和“寫(xiě)一個(gè)接口”的差別。2. 核心細(xì)節(jié)解析與實(shí)操要點(diǎn)2.1 數(shù)據(jù)庫(kù)設(shè)計(jì)先從兩張“不起眼”的表說(shuō)起很多同學(xué)刷項(xiàng)目時(shí)最容易忽略的就是建表腳本。因?yàn)榇a能跑他就不去關(guān)心表結(jié)構(gòu)為什么這么建。但這恰恰是蒼穹外賣(mài)里最值錢(qián)的部分之一。以菜品表dish和口味表dish_flavor為例。你去看單表結(jié)構(gòu)dish表里只存了菜品的基本信息菜品名、分類(lèi)id、價(jià)格、圖片、描述、狀態(tài)、創(chuàng)建時(shí)間、創(chuàng)建人等。而口味表單獨(dú)存了菜品對(duì)應(yīng)口味名字、值、菜品id。為什么要拆兩張表因?yàn)橐坏啦丝赡苡旨永庇秩ケ旨邮[這些多值屬性如果塞在dish表里要么搞出逗號(hào)分隔的一列要么就得冗余好幾列。拆一張子表用外鍵關(guān)聯(lián)查詢時(shí)再join回來(lái)這才是關(guān)系型數(shù)據(jù)庫(kù)的正確姿勢(shì)。我自己踩過(guò)一個(gè)坑之前做項(xiàng)目圖省事把所有口味都塞到一個(gè)字段里用JSON字符串存儲(chǔ)。前期數(shù)據(jù)量小倒沒(méi)啥感覺(jué)等用戶量上來(lái)想要“按口味篩選菜品”的時(shí)候才發(fā)現(xiàn)字符串里的內(nèi)容根本沒(méi)有辦法走索引只能全表掃描。后來(lái)老老實(shí)實(shí)拆表篩選查詢的速度馬上就提上來(lái)了。這里有個(gè)細(xì)節(jié)值得注意實(shí)體類(lèi)里對(duì)時(shí)間字段的處理。蒼穹外賣(mài)的公共字段創(chuàng)建時(shí)間、修改時(shí)間、創(chuàng)建人、修改人是通過(guò)MyBatis-Plus的字段填充自動(dòng)處理的。你在插入或更新數(shù)據(jù)時(shí)不需要手動(dòng)set這些字段只需要在對(duì)應(yīng)的實(shí)體屬性上加上TableField(fill FieldFill.INSERT)這類(lèi)注解。這個(gè)設(shè)計(jì)很成熟能避免大量重復(fù)代碼而且能保證每一條數(shù)據(jù)都有完整的審計(jì)信息。2.2 JWT雙端登錄一個(gè)系統(tǒng)里藏著兩套令牌體系蒼穹外賣(mài)里最繞不開(kāi)的一個(gè)知識(shí)點(diǎn)是JWT。光會(huì)調(diào)接口還不夠你必須清楚這兩套Token為什么要分開(kāi)。管理端的用戶是員工對(duì)應(yīng)的是employee表用戶端的用戶是C端顧客對(duì)應(yīng)的是user表。兩端登錄接口各自簽發(fā)各自的Token在網(wǎng)關(guān)層攔截的時(shí)候也各自校驗(yàn)各自的密鑰。我見(jiàn)過(guò)不少人在簡(jiǎn)歷里寫(xiě)“熟悉JWT”問(wèn)他如果管理端員工Token泄露了用戶端能用嗎他答不上來(lái)。答案很簡(jiǎn)單不能。因?yàn)镴WT的載荷里包含了身份標(biāo)識(shí)和權(quán)限范圍而接收方在驗(yàn)簽時(shí)會(huì)先確認(rèn)這是不是自己簽發(fā)的Token。兩端密鑰獨(dú)立就意味著即使某一端的密鑰泄露另一端也不會(huì)立即失控。在自測(cè)時(shí)候有個(gè)非常實(shí)用的工具是Swagger。蒼穹外賣(mài)里管理端的Controller都加了接口文檔注解你本地跑起來(lái)之后可以直接在Swagger頁(yè)面上做登錄把返回的Token復(fù)制出來(lái)然后在每個(gè)請(qǐng)求的Header里帶上它。只要Token沒(méi)過(guò)期你就能在瀏覽器里直接模擬所有管理端操作。這種方式調(diào)起B(yǎng)ug來(lái)比Postman一個(gè)個(gè)手填要快得多。3. 實(shí)操過(guò)程與核心環(huán)節(jié)實(shí)現(xiàn)3.1 菜品管理模塊從新增到起售停售的鏈路菜品管理這個(gè)模塊是蒼穹外賣(mài)里最適合用來(lái)打通“前后端分離開(kāi)發(fā)思維”的案例。先看新增菜品的請(qǐng)求參數(shù)結(jié)構(gòu){ name: 宮保雞丁, categoryId: 12, price: 28.00, image: https://xxx.com/1.jpg, description: 微辣花生米脆香, flavors: [ { name: 辣度, value: [微辣, 中辣, 特辣] }, { name: 忌口, value: [不要蔥, 不要蒜] } ] }注意這個(gè)參數(shù)結(jié)構(gòu)里面已經(jīng)隱含了一個(gè)重要信息接收對(duì)象不能直接用dish實(shí)體做入?yún)?。因?yàn)閐ish實(shí)體里沒(méi)有口味列表這個(gè)字段。所以蒼穹外賣(mài)里專(zhuān)門(mén)定義了一個(gè)DishDTO它不但包含dish實(shí)體的所有字段還在內(nèi)部放了一個(gè)ListDishFlavor用來(lái)接收前端傳過(guò)來(lái)的口味數(shù)組。這一層封裝不是多余的它解決的是前端傳參和數(shù)據(jù)庫(kù)結(jié)構(gòu)不完全一致的問(wèn)題。在實(shí)際企業(yè)開(kāi)發(fā)中這種DTO對(duì)象你幾乎天天都要寫(xiě)。很多人忽略DTO與實(shí)體分離的意義直接把前端的參數(shù)懟到實(shí)體上遇到“實(shí)體字段比參數(shù)少”或者“參數(shù)需要幾個(gè)實(shí)體拼接”的時(shí)候代碼就開(kāi)始變形。而DTO能讓你把接口入?yún)⒌目趶焦潭ㄏ聛?lái)哪怕后端實(shí)體重構(gòu)了只要DTO不變前端就不需要跟著動(dòng)。新增菜品的完整鏈路是Controller接收DTOService層手動(dòng)把DTO中的基礎(chǔ)字段拷貝到dish實(shí)體調(diào)用dishMapper插入菜品基本信息遍歷flavors列表逐個(gè)插入dish_flavor表事務(wù)控制任何一步失敗則整體回滾。這里最容易被忽視的是事務(wù)??赡苡腥擞X(jué)得插入兩張表很平常但如果不用事務(wù)在執(zhí)行過(guò)程中某一條insert語(yǔ)句報(bào)錯(cuò)就會(huì)留下“菜品存在但口味沒(méi)有”的臟數(shù)據(jù)。臟數(shù)據(jù)在管理端會(huì)造成菜品編輯時(shí)口味為空在用戶端會(huì)引發(fā)查不到完整菜品的尷尬。蒼穹外賣(mài)里在Service層的add方法上加Transactional就是為了避免這種不一致。再聊一下“起售停售”這個(gè)功能。別看它只是一個(gè)開(kāi)關(guān)底層邏輯其實(shí)涉及緩存一致性。菜品起售時(shí)要把狀態(tài)改成1停售時(shí)改成0。但如果用戶端使用了Redis緩存菜品列表這里就必須聯(lián)動(dòng)清理緩存。蒼穹外賣(mài)的處理方式是調(diào)用Spring Cache的CacheEvict在修改菜品狀態(tài)時(shí)把對(duì)應(yīng)分類(lèi)下的緩存數(shù)據(jù)淘汰掉。這么做有個(gè)好處是下次用戶端請(qǐng)求過(guò)來(lái)緩存為空查詢數(shù)據(jù)庫(kù)生成新緩存展示出來(lái)的就是最新?tīng)顟B(tài)代價(jià)是首次請(qǐng)求會(huì)略微變慢但相比起用戶端每次都被舊數(shù)據(jù)坑到這個(gè)代價(jià)完全可接受。3.2 購(gòu)物車(chē)為什么存數(shù)據(jù)庫(kù)而不是Redis購(gòu)物車(chē)這個(gè)功能看起來(lái)簡(jiǎn)單但設(shè)計(jì)思路很有講究。蒼穹外賣(mài)選擇把購(gòu)物車(chē)綁定到用戶id上單獨(dú)建一張shopping_cart表。每一行記錄用戶加入的一個(gè)商品、數(shù)量、口味信息。之前有人問(wèn)我“購(gòu)物車(chē)這種高頻操作為什么不用Redis緩存頻繁寫(xiě)庫(kù)不是浪費(fèi)性能嗎”我當(dāng)時(shí)給他打了個(gè)比方購(gòu)物車(chē)就像你去超市購(gòu)物手里推的購(gòu)物車(chē)你肯定不希望超市因?yàn)橄到y(tǒng)故障把你購(gòu)物車(chē)?yán)锏臇|西清空。對(duì)于外賣(mài)場(chǎng)景也一樣用戶花了十分鐘慢慢挑好的菜結(jié)果因?yàn)榫彺孢^(guò)期就不見(jiàn)了這種體驗(yàn)是致命的。所以購(gòu)物車(chē)必須持久化用戶下次登錄還能看到這才符合業(yè)務(wù)預(yù)期。這里有一個(gè)非常隱蔽的坑用戶往購(gòu)物車(chē)?yán)锒啻渭油粋€(gè)商品時(shí)是插入新記錄還是增加數(shù)量蒼穹外賣(mài)的做法是先按userId dishId 口味查詢?nèi)绻呀?jīng)存在就更新數(shù)量加一如果不存在才插入新紀(jì)錄。這段代碼的邏輯雖然簡(jiǎn)單但它體現(xiàn)了一個(gè)原則購(gòu)物車(chē)的唯一性由“用戶商品具體口味”共同決定。同一個(gè)宮保雞丁一份不要蔥和一份不要蒜其實(shí)是兩條購(gòu)物車(chē)記錄。因?yàn)閿?shù)據(jù)庫(kù)里加入了購(gòu)物車(chē)表所以支付模塊取消訂單時(shí)也可以反過(guò)來(lái)回滾購(gòu)物車(chē)狀態(tài)。這種數(shù)據(jù)閉環(huán)靠純緩存方案很難做完整。3.3 訂單狀態(tài)流轉(zhuǎn)與超時(shí)取消Spring Task 的真正價(jià)值訂單模塊是蒼穹外賣(mài)里技術(shù)密度最高的部分。一張訂單表里包含了訂單號(hào)、下單人、下單時(shí)間、支付狀態(tài)、訂單狀態(tài)、預(yù)計(jì)送達(dá)時(shí)間、菜品詳情快照、地址快照等字段。對(duì)你沒(méi)看錯(cuò)里面存的是“快照”。這里解釋一下“快照”的概念。比如用戶下單時(shí)選的宮保雞丁是28元但商家在用戶下單后把價(jià)格調(diào)成了35元。那這筆訂單應(yīng)該按哪個(gè)價(jià)格結(jié)算答案必須是下單時(shí)的28元。所以訂單表不能只存菜品id它還必須在生成訂單那一刻把菜品的名稱(chēng)、價(jià)格、圖片全部冗余拷貝過(guò)來(lái)。這就是快照。這個(gè)設(shè)計(jì)可能在學(xué)校項(xiàng)目里不多見(jiàn)但在真實(shí)的電商系統(tǒng)里極其常見(jiàn)——它保護(hù)的是交易契約的穩(wěn)定性。訂單狀態(tài)流轉(zhuǎn)的核心邏輯都集中在OrderServiceImpl里。常見(jiàn)狀態(tài)包括待付款1待接單2已接單/配送中3已完成4已取消5退款6每個(gè)狀態(tài)只能通過(guò)特定動(dòng)作轉(zhuǎn)換比如用戶支付后從待付款變待接單商家接單后變配送中送達(dá)后自動(dòng)完成。如果你在寫(xiě)狀態(tài)更新時(shí)不加條件限制直接set一個(gè)新?tīng)顟B(tài)那么客戶端只要多傳一個(gè)狀態(tài)值訂單就能被惡意跳過(guò)流程。所以蒼穹外賣(mài)里的狀態(tài)更新基本都是UPDATE orders SET status ? WHERE id ? AND status ?這種樂(lè)觀鎖風(fēng)格的條件更新這也是應(yīng)付面試時(shí)一個(gè)很值得說(shuō)的細(xì)節(jié)。超時(shí)未支付的處理則是Spring Task在項(xiàng)目里最直接的落地場(chǎng)景。每過(guò)一定時(shí)間系統(tǒng)自動(dòng)執(zhí)行一次掃描任務(wù)把當(dāng)前時(shí)間減去下單時(shí)間超過(guò)15分鐘且狀態(tài)仍為“待付款”的訂單批量改成“已取消”。這種定時(shí)任務(wù)的成本很低也不追求實(shí)時(shí)性用Spring自帶的調(diào)度機(jī)制就夠用完全不需要上消息隊(duì)列。這里還牽扯到一個(gè)“庫(kù)存恢復(fù)”的隱藏邏輯用戶下單時(shí)鎖定的庫(kù)存在訂單取消之后必須釋放。雖然蒼穹外賣(mài)里商品庫(kù)存的概念沒(méi)有電商項(xiàng)目那么重但這個(gè)思路是一致的——取消訂單不只是改一個(gè)狀態(tài)背后關(guān)聯(lián)的資源釋放動(dòng)作也得跟上。3.4 微信支付模擬沒(méi)有真實(shí)商戶號(hào)怎么聯(lián)調(diào)這是很多同學(xué)卡住的地方。因?yàn)槲⑿胖Ц缎枰鎸?shí)的商戶號(hào)、證書(shū)和回調(diào)域名本地開(kāi)發(fā)環(huán)境根本沒(méi)法完成完整流程。蒼穹外賣(mài)這里做了一個(gè)很務(wù)實(shí)的折中支付功能只需要生成支付參數(shù)真正發(fā)起支付時(shí)跳到模擬頁(yè)面并把支付結(jié)果手動(dòng)置為成功。但在知識(shí)點(diǎn)復(fù)盤(pán)時(shí)我們依然要理解微信支付的完整時(shí)序用戶下單后后端調(diào)用微信支付的下單接口傳入訂單號(hào)、金額、回調(diào)地址微信返回一個(gè)支付鏈接或支付參數(shù)前端拉起支付用戶支付完成后微信服務(wù)器異步通知后端回調(diào)接口后端校驗(yàn)簽名、金額訂單號(hào)確認(rèn)無(wú)誤后修改訂單狀態(tài)為已支付并向微信返回應(yīng)答。本地沒(méi)有真實(shí)商戶號(hào)時(shí)調(diào)試重點(diǎn)放到第5步的回調(diào)邏輯。你可以用內(nèi)網(wǎng)穿透工具把本地服務(wù)暴露到公網(wǎng)再用第三方支付測(cè)試工具模擬微信的異步通知。只要你能正確解析回調(diào)里的XML并完成驗(yàn)簽這筆訂單就算通了。等以后真拿到商戶號(hào)你只需要換成真實(shí)的HTTP請(qǐng)求調(diào)用業(yè)務(wù)邏輯幾乎不用動(dòng)。4. 常見(jiàn)問(wèn)題與排查技巧實(shí)錄4.1 JWT攔截器放行了不該放行的路徑這是所有人都會(huì)遇到的第一個(gè)問(wèn)題。明明配了攔截器但某些匿名接口比如用戶端登錄、管理端登錄、用戶端菜品瀏覽依然被攔截前端一片401。排查思路很簡(jiǎn)單打開(kāi)攔截器配置類(lèi)把excludePathPatterns里配的路徑和Controller上RequestMapping的路徑逐個(gè)比對(duì)。很多人栽在這里是因?yàn)槁窂綄?xiě)得不一致比如Controller是/user/user但攔截器里配的是/user這當(dāng)然放行不了。經(jīng)驗(yàn)之談配置放行列表時(shí)一定要把完整路徑寫(xiě)對(duì)盡量以/user/**這種通配符覆蓋子路徑。如果本地自測(cè)時(shí)覺(jué)得麻煩可以先臨時(shí)注釋掉攔截邏輯跑通了再加回來(lái)但記得最后一定要恢復(fù)。4.2 菜品列表查不出來(lái)先確認(rèn)Redis里有沒(méi)有臟緩存用戶端菜品分類(lèi)查詢用的是Spring Cache Redis。最典型的Bug場(chǎng)景是管理端修改了菜品用戶端看到的還是老樣子。原因基本集中在緩存沒(méi)有失效。檢查步驟三步走確認(rèn)管理端修改菜品時(shí)有沒(méi)有觸發(fā)CacheEvict確認(rèn)CacheEvict的key和用戶端查詢時(shí)Cacheable的key是否一致直接進(jìn)Redis用keys命令查看所有相關(guān)緩存比對(duì)數(shù)據(jù)時(shí)間和菜品最新更新時(shí)間。這里有個(gè)坑是key生成策略。Spring Cache默認(rèn)的key是“參數(shù)組合”如果管理端清除緩存用的key和用戶端讀取用的key完全不是一回事那緩存永遠(yuǎn)清不掉。解決辦法就是統(tǒng)一定義緩存key的前綴和拼接規(guī)則比如dish_category_分類(lèi)id不要圖省事兒不寫(xiě)key直接用默認(rèn)規(guī)則。4.3 超時(shí)訂單沒(méi)被掃描到先查time條件Spring Task定時(shí)任務(wù)跑了日志也打了但數(shù)據(jù)庫(kù)里過(guò)期的訂單就是沒(méi)被取消。大多數(shù)情況下是SQL里的時(shí)間比較寫(xiě)錯(cuò)了。比如你把“下單時(shí)間小于當(dāng)前時(shí)間減15分鐘”寫(xiě)成了“下單時(shí)間大于”或者直接拿字符串比較時(shí)間都會(huì)導(dǎo)致篩選結(jié)果為空。在本地復(fù)現(xiàn)這個(gè)功能時(shí)我建議你造一條訂單把下單時(shí)間改成20分鐘以前然后手動(dòng)執(zhí)行一次定時(shí)方法觀察日志和數(shù)據(jù)庫(kù)。如果按真實(shí)場(chǎng)景等15分鐘調(diào)試效率太低了。4.4 菜品口味新增失敗多半是事務(wù)沒(méi)生效在一個(gè)Service方法里同時(shí)插入dish和dish_flavor如果插入口味時(shí)報(bào)錯(cuò)而菜品卻插入成功大概率是事務(wù)沒(méi)包住。通常原因有兩個(gè)類(lèi)沒(méi)有被Spring容器管理即缺Service注解方法被同類(lèi)內(nèi)部調(diào)用導(dǎo)致AOP代理失效。解決方式也很簡(jiǎn)單在public方法上加Transactional并確保調(diào)用方和被調(diào)用方在Spring容器中不要用this內(nèi)部調(diào)用。要是你為了啟動(dòng)速度把某些Service排除出了包掃描范圍那事務(wù)自然也不生效。4.5 支付回調(diào)驗(yàn)簽失敗先看證書(shū)和密鑰格式模擬聯(lián)調(diào)中回調(diào)驗(yàn)簽失敗的當(dāng)場(chǎng)不必急著懷疑代碼邏輯更常見(jiàn)的情況是你配置的API密鑰是微信商戶平臺(tái)的老版密鑰不是V3版本的APIv3密鑰或者證書(shū)解出來(lái)多了一行換行符。最簡(jiǎn)單有效的方式是先把完整的回調(diào)報(bào)文原樣打日志人工核對(duì)該報(bào)文里的字段再單獨(dú)測(cè)試驗(yàn)簽函數(shù)是否能對(duì)已知簽名的數(shù)據(jù)返回true。驗(yàn)簽單獨(dú)通過(guò)之后再串進(jìn)回調(diào)接口里看整體流程。5. 避坑經(jīng)驗(yàn)分享個(gè)人實(shí)操心得刷蒼穹外賣(mài)這種項(xiàng)目切忌眼高手低。代碼輪子很容易敲出來(lái)但真正值的是把每條鏈路背后的“為什么”想明白。我個(gè)人的實(shí)操心得可以濃縮成三條第一先跑通再重構(gòu)最后刪了重寫(xiě)一遍。你跟著教程敲完整個(gè)項(xiàng)目只能算入門(mén)把它從自己腦子里按記憶重新實(shí)現(xiàn)一遍才算消化。刪掉自己剛寫(xiě)完的代碼這件事聽(tīng)起來(lái)很刺激但效果出奇地好。第二遍重寫(xiě)的時(shí)候你會(huì)開(kāi)始考慮異常處理、狀態(tài)枚舉、DTO設(shè)計(jì)這些東西因?yàn)橛械谝槐榈娜忠暯悄銜?huì)更自然地做出更好的設(shè)計(jì)決策。第二每做完一個(gè)模塊就畫(huà)一張模塊關(guān)系圖。不一定是正式文檔可以是草稿紙上的圈圈線線。這個(gè)動(dòng)作能幫你把Controller、Service、Mapper、數(shù)據(jù)庫(kù)表之間的關(guān)系印在腦子里。面試官問(wèn)“你做過(guò)的項(xiàng)目有哪些模塊”你不至于只記得一堆方法名而是能講清楚模塊間怎么協(xié)作。第三不要跳過(guò)支付回調(diào)的模擬。很多人覺(jué)得本地沒(méi)有商戶號(hào)支付這塊看看視頻就好。但你一旦跳過(guò)后面面試被追問(wèn)支付流程就會(huì)露怯?;ㄒ粋€(gè)下午用模擬工具走通一遍回調(diào)收益遠(yuǎn)比你想象的大。以后再聊到具體的模塊時(shí)我們可以一個(gè)個(gè)把它們打透。比如訂單狀態(tài)機(jī)可以再細(xì)化出“取消訂單”的庫(kù)存回補(bǔ)邏輯比如用戶端菜品瀏覽如何結(jié)合Redis做分類(lèi)分頁(yè)緩存比如管理端營(yíng)業(yè)統(tǒng)計(jì)里的數(shù)據(jù)如何用SQL一次性聚合出來(lái)。慢慢來(lái)把每一期都吃透面試和實(shí)操就都不怕了。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
九九久久久九九| 自拍偷拍国产欧美日韩韩| 六月丁香啪啪啪| 怡红院成人av| 国产精品人妻熟女aⅴ| 91丝袜美腿网站| 日本精品五区| 欧美天堂日韩三级国产传媒| 在线综合 亚洲 欧美中文字幕| 韩国轻伦国内自拍一区| 日本午夜精品理论片A级APP发布| 91五十路| 91制服丝袜中文字幕| 国产精品大香蕉| 污色区网站| 18一区二区三区| 一区二区激情国产熟女| 国产91亚洲精品一区二区三区| 97人人中文网| 一区麻豆 高清中文字幕| 女同性恋久久| 成人自拍三级在线观看| yw尤物av无码点击进入麻豆| 久久 久久国内精品亚洲| 欧美日韩操逼嗦吊| 无遮挡一级毛片视频免费的| 久久网亚洲| 五月丁香啪啪啪| 久草免费福利在线播放| 超碰色老头| 99精品热| 亚洲美乱| 久久啊哟| 中文啪啪视频| WWW黄片COM| 一级黄色视频网| 一级性爱网| 久热最新在线杭州| 中文字幕 av v| a片自拍直播视频| 97超碰大| 二级毛片| 欧美亚洲特P| 熟女一区二区| 艳美熟妇先锋一二三区| 福利偷拍视频-中文字幕2019国语完整视频大全-S91AV | 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 国语国产操逼伊人AV网| 在线观看中文字幕| 欧美翘臀视频网站一区二区三区| 色97欧美| 欧美色图91p| 色色五月丁香| 欧美麻豆成人同性GⅤ在线| 视频一区二区免费在线| 97超碰欧美精品| 久久久性少妇| 玖玖爱伊人玖玖爱| 一本一道久久综合久久| 亞洲久久直播| 无码区蜜乳| 久久国产免费激情视频| 岛国激情视频软件| 男人的天堂一区三区| 免费A V在线| 色婷婷九月天天综合| 精品蜜乳AV免费观看| 精品久久久av无码免费| 亚洲欧美综合区自拍另类| 亚洲国产精品9999在线观看| 超碰九色| 又黄又粗又硬又长又大| 亚洲成人在线资源| 精品国模无码| 国产午夜激片Av毛片不卡| 欧美 亚洲 偷拍自拍| 五月激情综合网| 亚洲中文字幕网| 高清不卡国产| 成人情色综合网| 26uuu最新| 免费强奸av| 99这里有精品视频| 久伊人网78| 四虎精品永久在线播放| 天天弄天天操| 精品久久在线区一区| 91影视亚洲| 中文字幕97| 日韩欧美字幕亚洲一区二区| 色婷婷婷五月天激情四射| 在线黄色污污网站| 大色网久久| 欧美色图91| 日本一区视频在线观看| 青青草中文-久久青草精品一区二区三 | 亚洲乱色视频一区、二区在线| 欧美午夜视频| 综精品久久久aaaa| 日韩有码专区| 狠狠操狠狠| 在线电影亚洲色图| 精品999一区二区| 亚洲精品三区在线观看| 日本 免费 一区二区三区 久久香蕉 | 久久久专区| 国产在线观看一区二区三区| 东北女人av| 婷婷激情四射| 亚洲人人操| 亚欧美无遮挡| 久久9视频| 欧美日韩美女精品久草一区二区三区 | 宅男影院久久久,99| 九九九九九九九精品视频| 日韩无码服务区| 日韩av性爱在线播放| 亚洲综合网电影91| 人人妻人人澡人人爽久久av| 久热大香蕉| 97伊人超碰| www网站黄| 亚洲天天精品| 色人久久| 夜夜躁狠狠躁日日躁av| 亚州操操穴网| av网站在线看| 超碰人妻中文在线| 5278欧美一区二区三区| 老色鬼成人精品视频下载大在线观看| 中文字幕 国产区| 欧美亚洲丝袜人妻制服中文99| 五月婷婷丁香中文字幕| WWW操逼| 日本99一区二区| 国产成人99久久亚洲综合| 五月天伊人| av影院十区| 午夜一区| nuu12国产麻豆精品| 国产精品香蕉热久久新品| 久久人妻少妇| 97九色人妻| 自拍偷拍国产欧美日韩韩| 影音先锋一区二区在线资源| 韩国一级做A片免费的| 97色综合中文网| 嗯嗯,啊啊,国产精品| 午夜舔阴达高潮视频免费看| 妇人噜噜| 操一区| 日本五区不卡| 麻豆人妻精品一区二区| 99久久久无码精品国产人| 99精品高潮| 欧亚性爱在线视频| 91熟女丨91老女人| 好舒服视频| 亚洲精品无码少妇久久| 凹凸视频在线一区二区| 国产嫩草精品A88AV| a级成人毛片免费视频高清| 日日夜夜骑| 国产亚洲精品美女| 日韩97超碰中文字幕| 人人妻人人爽 97人人看碰人免费公开视频| 亚洲高清男人天堂| 英伦大奶子熟妇吊带| 一区操逼日比视频| 神马久久久久久久| 欧美肥臀在线| 亚洲性感丝袜诱惑在线观看| 校园春色制服丝袜中文字亚洲| 1级黄色夫妻对换性交免费看| 影音资源男人日韩| 久久精品操| 福利天堂| 黄色二级片网站| 9999免费精彩视频| 91精品啪在线观看国产城中村| 老熟女91视频| 综合久久2017| 99热精品在线观看| 亚洲天天精品| 青青草无码视频| 婷婷亚洲综合| 日逼国产| 国产一区二区精品久久99| 日韩欧美性爱电影在线观看| 国产成人五月天丁香花| 性欧美| 97一区二区三区视频| 亚洲色人妻综合| 一区在线国产播放| 亚洲久热| 亚洲激情综合| 日韩有码免费视频| 夜夜高潮夜夜爽高清视频一| 亚洲黑丝在线| 鲁鲁色综合网| 97久久精品亚洲中六字幕| 亚洲情色第一页| 色色婷婷丁香| 五月婷婷丁香六月| 伊人AAA| 丁香五月天视频| 丁香五月天堂| 激情综合网激情五月天| 九九热免费在线国产视频伊人五月| 69精品少妇一区二区三区蜜桃| 国产福利精品最新在线| 久久久夜夜嗨免费视频| 日本综合久久| 欧美激情综合网| 日韩精品高清资源在线| 最新精品久久蜜桃| 情色五月天就去干| 不卡视频一区蜜桃视频| 久热影视| 黄色视频特级毛片| 婷婷五月天补不补| 国产超碰在线一区| 人妻激情在线视频| 伊人九九九| 国产精品福利资源在线尤物| 亚洲精品官网在线观看| 国产最新AV| 欧美精品丝袜久久久中文字幕| 中文字幕视频一区视频二区| AV色图| 香蕉精品二区二区| 欧美色97| 韩三级a视频在线观看| 午夜福利一区二区影院| 色乱二区| 96精品在线| 亚洲综合113页| 亚州Av天美传媒| 97色在线视频| 国精精品无码一二三区水多多| 日本肉体xxxx裸交| 五月天色图| 超碰碰小说97| 一二三区操逼国产91| 欧美日韩婷婷中文| 国产免费小视频| 国产精品国产亚洲区艳妇糸列| 精品九九国产无码| 99热99re超碰精品| 视频黄站| 日韩A优精品在线观看| 又粗又长又爽在线观看| 日韩精品一二三四| 99精品无码| 亚洲婷婷丁香在线| 午夜高清成人在线视频| 色欲人妻一区二区在线| 青草成人免费视频一COm| 亚洲无无码αⅴ每日更新| 久精品无码av一区二免费国产在线观看| 97在线精品| 久草热制服丝袜在线观看| 巨乳特殊服务按摩| 国产又操| 91路www| 熟女乱3伦999| 激情网五月天| 久久久久久中文| 影音先锋视频在线| 国产日韩人人| 日韩精品在线放| 福利社区午夜一区二区| 久久亚洲骚逼综合| 天天草天天日| 天天影视网综合少妇| 欧美亚洲清纯| 五月婷婷青青草娱乐伊人| 东京热毛片177b2viP| 国产精品宅男免费| 国产精品午夜福利视频| 亚洲激情综合另类男同| 亚洲不卡av在线| 午夜一区| 婷婷丁香五月综合| 久草这里只有精品 | 97超碰免费人人性爱| 久草久日| 久久性爱网站| 成人情色综合网| 郑州宾馆老熟女露脸啪啪| 色网在线| 全免费a敌肛交毛片免费| 婷婷五月天无码 | 天天做天天爱天天爽AV| 天天网综合| 九九色综合| 亚洲天堂另类| 玖玖人人爱| 亚洲自拍97| 91色情黑丝搞鸡在线观看一区二区三区三州| 精品少妇人妻一区二区三区| 激情五月天视频| 国产中文字幕在线| 日本久久网| 日本欧美不卡| 欧美专利1区2区3区4区5区免费| 丰满人妻一区二区三区蜜桃视频| 99热亚洲天堂| 国产v片在线免费观看| 午夜福利久久久噜久噜久久综合 | 曰韩操B| 男人天堂综合| 在线无码操| 97国产精品久久久久| 亚洲性爱无码乱伦av| 欧美最婬乱婬爆婬牲视频| 日本岛国黄色网址| 日韩一级二级三级免费看完整版| 九一屌逼| 在线中文字幕极品av| 啊啊啊 在线| 狠狠躁AV| 亚洲精品亚洲人成在线麻豆| 91熟女丨老女人| 麻豆 欧美 日韩| 国产一区二区三区视频在线看| 天天操天天日青青草超碰av| 9久精品| 亚洲天堂久久久久久粉红视频| 操学生天天| 国产一区二区三区影片| 国产婷婷综合在线观看| 亚洲夜夜欢无码一区二区| 久久久性爱| 欧美大香蕉97| 欧美日韩岛国大片在线观看| 嫩草美女久久| 亚洲天堂男| 精品亚州18| 中文字幕 码 自拍 视频 区| 久操网视频| 啊啊啊久久| 欧美丝袜美女电影一二三四区| 狠狠操狠狠插| 午夜男人一级A片7777| 激情小说图片亚洲首页| 夜夜爽夜夜操| 后入福利| 粉嫩久久久极品| 国产精品情侣啪啪| 大香网伊人久久综合| 一级性爱啪啪视频| 大屁股人妻女教师撅着屁股| 97网色| 屁股久久久久久久久| 欧洲中文字幕| 懂色AV一区二区三区| 性开放中文AV高清无码免费看| 精品久| 老鸭窝在线视频播放| 97久久久精品| 日韩中文字幕熟妇人妻| 天天综合网~69| 大地资源在线观看中文第二页| 无码人妻精品一区二区三区99不卡| 97视频播放| 超碰欧美97资源| 亚洲熟久久| 麻豆性爱视频在线播放| 亚洲欧美天堂在线| 熟妇一区二区三区| 射丝袜高跟鞋99| 久jiu久神马影院| 天天综合精品| 日韩啪啪啪啪啪| 97精品综合久久| 超碰人人在线| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 日本午夜精品理论片A级APP发布| 久久国产性爱| 一区二区三区四区免费视频| 亚洲天堂7777| 中国亚洲呦女专区| av在线资源| 欧美日韩999| 亚洲国产精品久久久久久久久久| 久久综合日韩亚洲欧美| 美女淫穴| 亚洲日韩久久精品一区| 欧美91色| 91欧美情色| 78超碰| 在线观看中文字幕| 激情五月综合开心五月| 国产成年女人免费视频播放a| 成年人网站在线免费观看| 另类亚洲一区二区三区| 青娱乐国产盛宴视频| 熟女字幕| 欧美少妇熟女| 美女淫穴| 神马久久免费电影观看| 9久久久久| 国内亚洲高清无码| 亚洲 日韩 丝袜 熟女 变态| 六月丁香网| 九九久久久久久爱| 4虎在线视频| 色原狠狠天天天| 国产精品视频内谢女人| 强歼乱伦资源网| 开心五月深爱五月| 九草在线大香蕉| 91 国产丝袜在线播放-百度| 91天堂| 91精品亚洲内射孕妇| 日韩精品在线观看网站| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 欧美九九九九九| 日本乱人伦片中文三区| 91九色精品熟女内射| 91色噜噜狠狠| 情色大香蕉| 玖玖爱在线视频免费观看| 国产精品色片一区二区| 78p欧美| 97精品一区| 最新亚洲黄色免费电影| 啪啪91| 欧美性爱一区二区三区四区| 中文字幕一区二区三区四五区| 国产偷人伦激情在线观看| 激情干在线| 91黑丝少妇| 又黄又硬又粗又长国产视频| 国产操偷| 激情五月天校园春色网| 性色AV蜜色av色欲av| 日本性爱少妇| m欧洲一级午老| 久操免费观看| 欧美刺激色黄片免费看| 亚洲色图 图片| av亚欧| 99综合视频| 久久久久久久久久久久欧美日| 天天肏天天干| 免费夜夜爱黄色视频毛片| 狠狠爱AV| 国产黄色 A 片免费看| 午夜天堂网| 好爽视频在线观看视频| 九九热免费视频| 97爱啪| 国产亚洲精品美女久久久久久2021| 蜜桃精品一区二区三区ww| 97久久国产精品女不卡| av大香蕉| 国产精品久久久久婷婷二区次| 熟妇操花| 亚春色色| 少妇超碰在线| 久久九色| 夜夜狼人妻| 青青操网| 天天天天天超碰| 二男一女成人A片| 大香蕉综合久久| 日逼逼免费看| 色麻豆AV| 色婷婷电影网| 美女啊啊啊啊啊| 天堂九九九九九九九九九| 快灬快灬 一下爽蜜桃在线观看| 人人扣人人操| 亚洲色宗合| 精品熟女一区=区三区| 在线视频亚洲无码| 精品然女一区二区| 国产69精品久久久久99尤物| 久久久久久免费电影| 日韩精品一区二区三区色欲| 一本色道人妻久久| 久久本道| 涩涩涩综合| 日韩人人精品| 大香蕉操久久| 亚洲精品成人动漫在线| 超碰97在线中文| 日韩久久激情精品| 夜夜嗨视频| 青青草视频久久久久| 亚欧成人综合影院| 黄色成年| 伊人国产视频| 九九aV| 精品无码欧美三级| 天天操熟妇| 偷窥自拍亚洲色图| 美国人人操人人操| 99在线精品视频| 免费人人搞97| 婷色五月| 强奸乱伦AV网站| 综合久久2017| 美女骚尻视频| 欧美黄色图片| 丁香婷婷久久| 国产精品亚洲一级av第二区| 久草这里只有精品 | 女人喷水视频在线观看| 亚洲欧美日韩中文播放| 亚洲色图 综合| 丝袜美腿诱惑亚洲欧美视频在线观看 | 国产操逼视频在线观看| 国产精品午夜福利| 青青草国产盗摄一二三区| 免费AV播放| 日韩在线一区二区| 亚洲欧美天堂| 日日干日日摸| 欧洲亚洲天堂精品 | 综合欧美亚洲| 精品无人区麻豆乱码1区2区图片 | 国产中文字幕在线点播| 超碰97 线线 在现| 强奸乱伦中文字幕AV| 久草成人| 超碰4A| 9精品久久| 伊人久久亚洲中文字幕| 亚洲影视综合网| 免费精品福利在线观看| 日韩精品在线观看观看| 亚洲,日韩,欧美,成人播放 | 九九九午夜| 人妻少妇久久久| 欧美黄片视频在线观看免费 | 狠狠躁天天躁日日躁97| 黄资源| 亚洲天堂第一页| 十八禁网站在线| www.狠狠| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | 黄色激情电影在线观看| 在线a亚洲视频播放在线| 97亚洲中文| 97超级久久| 高潮9999外国| 欧色网址| 外国91| 亚洲有码视频二区| 亚洲精品人体| 久久久久久精| 一本色道无码DVD中文字幕| 国产精品熟女一区二区三区| 一起草视频在线| 精品国产乱子伦一区二区三区,精品一| 加勒比久久av| 亚洲精品蜜桃久久久| 高清孕妇孕交 交孕妇| 狠狠爱夜夜干| 天天干夜夜操一区二区| 91老司机精品| 福利风月五月天影院| 国产999精品久久久久久| 丁香五月天堂网| 日本超碰在线国产一区| 暖暖精品二区三区观看| 国产熟女| 亚洲综合草草| 大香蕉淫人网| 久久日韩精品一区二区| 青青伊人这里只有精品| 日本3级一区二区免费| 国内外色色色色色成人视频| 好淫网一二三视区| 六月婷婷一区二区三区| 久9综合在线| 日韩精品人妻一区二区| 另类TS人妖一区二区三区| 亚洲欧洲综合成人av一区| 91动漫操逼视频| 久久久中文| 日韩一999精品| 9999九九九久久久| 水滴偷拍| 国模私拍一区二区三区神乳| 国产三区免费在线观看| 啊灬啊灬啊灬好深灬快高潮了动漫-国产字幕国产在线观看-B049AV | av中文在线| 顶级少妇BT天堂| 超碰到97情色| 福利视频香蕉免费一区二区在线| 乱欲一区二区| 97干在线看| 久湿久久| 国产高清午夜成人在线观看| 亚洲色图日韩精品| 色噜噜人妻av 中文字幕| 日韩少妇在线视频| 又大又大又大又粗爽高潮观看 | 国产情色在线| 国产精品美女视频诱惑| 在线v中文字幕一区二区三区| 97香焦色区| 欧美性爱伊人| 宗合情欲网| 91精品国产91熟女| 家庭乱伦网站国产| 日韩天堂av电影在线观看| 玖玖无码超碰| 不卡一区二区日本视频| 青青草日逼视频| 欧美狠狠狠| 国产精品一二三在线看| 大香蕉中文aV在线| 九九亚洲| 婷婷色影院| 亚洲人码13| 国产又黄又爽又刺激久久久久久| 啊…啊…操我用力操我| 狠久久| 啪一啪免费视频| 欧美97在线观看| 在线视频亚洲无码| 性爱动态120秒| 欧美在线第五页| 欧美亚洲尤物久久| 久久精品夜色国产亚洲AV| 欧美日本成人一区二区| 夜夜嗨一区二区| 久久精品无码一区二区三区| 九九性爱网| 精品女同一区| 91动漫操逼视频| 香蕉av一区二区三区| 一本精品日本在线视频精品| 老熟女区| 无码 黑人一区二区三区| 天天日日本| 亚欧高清| 男生女生啊啊啊啊| 免费a级毛片av无码久久精品中文字幕| 久久久久久久一级黄色打同平台| 99999久久精| 色啪网| se..亚洲欧美| 日本有码影片下载| 国产精品福利资源在线尤物| 极品粉嫩一区二区| 一级做a爰片性色毛片久久| 欧亚乱色熟一区二区三四区| 欧美日韩在线视频网站| 久久一区,青青青青草视频在线播放| 秋霞午夜成人福利片片| 台湾大香蕉99热| 日韩无码a片| 91黑丝操| 97色婷婷| 欧美一级黄色免费专区| 伊人991| 国产女人91精品嗷嗷嗷嗷| 亚洲欧美校园| 强奸少妇AV导航网| 国产一区二区三区视频在线看| 亚洲精品一区二区免费在线观看| 成年人性爱日韩| 99re视频这里只有精品| 青娱乐av在线| 午夜电影在线观看无码专区| 日本亚洲嫩草影院啪啪| 少妇蜜汁| 欧日a| 少妇久久久久久| 品亲网欧美品亲网| 大香蕉综合网| 麻豆AV96熟妇人妻| 一区二区三区精品视频| 凹凸精品熟女在线观看| 久久久久ab| 婷婷综合久久| 黄色人人| 超碰97COm中文| 欧美色一二三| 99精品久久| 天天色,天天干,天天干| 亚洲第一页色网| 60秒试看最爽10分钟网站| 天天躁日日躁AAA片李宗瑞| 射久久| 91欧美巨乳| 久久久久久久 九九九九九九九 | 人妻蜜桃臀| 中文字幕视频2区| 极品白嫩美女白浆成人福利在线看| 大香蕉欧美| 92大香蕉| 精品国产72| 首页亚洲国产高跟丝袜诱惑视频| 国产精品网址| 视频不卡中文字幕| 亚洲精品久久久久久| 久热久一区二区三区| 久久曰曰| 自拍偷拍 高清无码| 伊人热综合| 婷婷10月天青娱乐| 欧洲亚洲人人爽爽视频| 蜜臀AV成人精品蜜臀AV久久| av九九| 欧美三级中文字幕hd| 亚洲伊人久久综合97| www.91视频网| 日韩在线观看AV| 在线观看 99热| 国产亚洲欧洲在线观看| caopeng97| 丁香五月天啪啪| 蜜臀操逼黄色视频操的好爽| 性影在线视频| 无码区蜜乳| 麻豆国产97在线| 亚洲精品九九九| 美女诱惑久久| 91精品国产一区三一| 性感美女91影视| 亚洲脚交| 黄页网站成人免费| 强奸乱亚洲| 熟女精品va中文字幕| 人人摸.人人色| 日日干天天干夜夜爽| 91精品国产91综合久久蜜臀| 久久东京热久久| 高清孕妇孕交 交| 97资源站日韩| 老鸭窝成人免费毛片视频| 91色欧美| 91制服丝袜中文字幕| sewuyueav| 日日操夜夜操天天操免费观看麻豆| 91日韩网站| 麻豆熟妇乱妇熟色A片在线看| 天堂亚洲精品| 校园春色五月天| 国产女人视频三四五区| 久久老女人| A片大香蕉在线| 在线岛| 国产精品激情久久久久久久| 午夜福利视频在线一区| 簧片免费看视频| 丁香五月天堂| 精品久久在线区一区| av情色影音| 亚洲一二三| 色偷偷2020免费视频播放| 国产综合久| 久草在线| 在线播放一级无码视频| a级理论午夜日本| Julia在线播放亚洲久久| 大稥蕉免费视频这里只有精品| 91九九九馒头| 九九九九九九视频| 97欧美综合网| 100啪啪视频大全| 男女激情黄色网址| 日韩三级视频一区二区三区| 裸体女人草逼视频播放一区,二区,三区,四区,五区 | 四虎精品一区二区| AV乱伦专区| 亚洲色图欧美视频| 天天综合网国产| 婷婷15月天青娱乐| 欧色网址| 巨爆乳一区二区爆乳区| 亚洲色图日韩丝袜制服一区二区五月在线| 中文字幕伊人| 一二三啪啪专区| 岛国成人av在线播放网址| 99久久久| 黄网站黄视频网站进入口| 吊色| 神马久久午夜| 欧美操逼熟女| 熟女丝袜视频| 人妻 欧美亚洲| 中日韩免费看男女操逼大全| 日韩精品永久在线观看| 夜夜高潮夜夜爽高清视频一 | 啊啊嗯嗯好爽| 日本www操操操| 欧美久久婷| 91精品人妻一品二品三品| 岛国激情视频在线观看| 日本人体九九九九九九| 久久精品一区二区三区蜜桃臀| 91社区伊人| 日韩精品一区二区三区色欲| 亚洲人妖网| 思思热国产高清| 激情五月丁香五月| 激情啪啪视频| 亚洲伊人a线观看视频| 丰满欧美少妇| 久久久久久久久9| 一本一道vs波多野结衣| 神马久久久久久久久久| 色图综合网| 天天操夜夜操| 91综合天天| 日本韩欧美在线播放a| 亚州欧美一区| 日韩综合成人免费视频| 欧美人妻二区三区| 97在线视频免费观看| 婷婷亚洲综合| 天天在线91| 国语av最新自产拍在线观看| 久久久久密臀一区二区| 日本韩国国产精品一区| 久久精彩视频9| 亚洲欧洲激情卡通另类文学四射小说网站 | 97玖玖人妻| 男人久久天堂| 大香交伊人网| 2017天天拍大香蕉| 亚洲熟妇自偷自拍另欧美| 午夜噜噜噜| 天天拍天天操| 91老熟女视频| 精品四五区| 91操熟女| 蜜桃臀 后入 一区 二区 三区 在线| 色欲av国内精品久久久久久| 欧美在线官网| 国产精品爆乳懂色蜜乳| 人妻天天爽夜夜爽精品2| 中文字幕第9页萱萱影音先锋| 人人喜人人妻| 久久av无码| 天美传媒AV国产在线| 亚洲囯产精品女人久久久| 91精产一区二区三区| 色乱二区| 91色夜| 内射日韩大臀美女| 99久国产精品午夜性色福利| 欧美色图 人妻| 亚洲高清无码在线桃色| 可乐操亚洲蜜911| 黄污污污污| AV乱伦国产| 亚洲国内精品成人不卡| 一区二区三区视频在线观看免费| 蜜臀久久99精品久久久久久成人小说| 天天操天天插| 欧美高清18A片| 天天激色| 亚洲国产第一页综合视频| 欧美成人免费在线观看| 成人熟女区| 国产精品一区二区黄片| 精品午夜福利| 国产精品久久久九九九| 91|九色|国产熟女| 九九综合九九综合| 精人妻无码一区二区三区伊人直播| 91狼人| 综合伊人网12色| 日韩八十路老熟女| 久久国产精品一级二级三级| 日韩精品国产一区二区| 一二三区视频在线观看| 亚洲瓯美色图| 久久久久9| 黄色免费网| 亚洲风情综合网| 有码人妻系列| 极品尤物在线观看| 日韩性爱免费观看视频| 东北老熟女| 色情亚洲日本成人| 五月天激情小说| 免费精品人妻一区二区三| 97超碰9| 青青操视频在线| 一区二区久久天天干狠狠| 91操人| 成人无遮挡毛片免费看| 久久线上视频免费看| av麻豆啪啪| www鬼畜国产男人的天堂| 人人摸人人干人人拍97| 欧美人与动性人交a| 偷拍导航视频网站| 长久操视频| 欧美狠狠鲁| 亚洲天堂男人在线| 免费黄色A片| 亚洲色图欧美色图日韩色图| 少妇综合| 男同专区一区二区三区在线| 国产和美国毛片| 欧美激情片一区二区| 色色色色色色色色色色色色色色综合| 秋霞免费AV| 国产乱伦性爱区| 国产91影院| 天天干18禁| 狠狠入| 国产精品白丝www| 国产第11页| 久久久∴| 男插女青青影院| 97人人中文网| 东京太热久久久| 99这里都是精品| 九九色热| 婷婷五月天影院| 日韩性爱电影一区| 人人操人人叉人人插人人| 91深夜夜| 日本精品无码三级网站| 又大又长又粗又爽又黄| 黄片免费视频2019| 日日操免费视频| 久久久久久亚洲Av无码精| 日本一道在线播放高清| 97超碰久久| 午夜精品久久久| 精品高潮| 99亚洲国产精品色一区二区三区| 亚洲爽图| 97无码视频在线播放| yaouchengrenav| 日韩成人精品| 日本 色 导航| 亚洲成人美女无吗| 人人妻人人狠人人| 日本一本道A级黄色毛片试看60分钟| 色成人Www精品永久观看| 日韩人妻 中文字幕| 国产AV无码AV| 久草五月| 欧美性猛交美女自慰91| 91美腿丝袜在线观看| 日韩/97| 福利在线视频一区二区| 超碰到97情色| 殴美色网| yiqicaoav| 无码 黑人一区二区三区| 精品人妻av在线播放| 小情侣高清国产在线视频| 国模精品一区二区三区苹果色戒 | 欧美精品一二三| 大香蕉一级黄色片久久| 欧美日韩色综合网| 色综合色欲色综合色综合色综合| 狠狠干,狠狠操| 午夜激情床戏激情| surenchaopeng| 99这里只有精品| 亚洲欧美黄| 自怕偷自怕亚洲精品| av天堂5| 91在线免费观看处女| 99re这里| 97极品无码| 中文字幕一二区二三区人妻专区| 国产做?爰片久久毛片?片美国| 五月激情综合网| 亚洲自拍欧美国产首页网曝| 天天热精品| 欧美成人免费在线观看| 亚洲高清无码在线桃色| 久久久草成人网站久久久草成人久久久草久久久| 有码免费观看| 69丨亚洲丨精品丨入口免费播放| 91综合熟女| 99久久久er直播网址| 欧美日韩国产中文超碰| 欲女人妻性色av| 日本影视久久免费| 国产美女高潮叫床视频| www.一本大99| 欧美另类天堂| 欧美爱三级日韩久久| 五月婷婷激情网| 久久水蜜臀亚洲AV无码精品| 婷婷激情丁香| 午夜一区二区三区国产| 殴美牲| 亚洲激情深爱文学小说网站| 国产精品爆乳懂色蜜乳| 狠狠色婷婷777| 99精品丰满人妻| 国内毛片欧美香蕉精品| 激情小说五月天| 日韩亚洲97| 少妇一区二区三区高速| 99热免费| 精品玖九九久| 黄色视频特级毛片| 天天影视射综合网| 日本孕妇一区二区视频操逼免费看 | 欧美在线|亚洲| 蜜乳Av成人片网站| 91最新综合| 久久人妻| 久久精品国产精品亚洲艾通辽熟妇| 941超碰| 成人aⅴ一区二区三区| 青青操在线亚洲视频观看欧美在线 | 97精品久久| 丁香六月综合激情| 91成人亚洲色图| 特级丰满少妇一级AAAA爱毛片| 美女的肌被草喷水视频| 五月天亚洲色图| 日日日日日| 午夜九九九九九九| 综合激情五月丁香| 97精品一区二区视频在线观看| 国产美女mm131爽爽爽爽| 丝袜亚洲91| 国产精品美女久久久久AⅤ国产馆| 青青草视频爽一爽| av黄图片在线观看| 黑丝少妇麻豆| 91精品无码久久久久久久| 好湿好紧好爽 视频| 亚洲欧洲激情卡通另类文学四射小说网站 | 中文伊人大香蕉视频| 好爽免费视频| 1024久久高清视频| 三上悠亚在线毛片91| 99热色这里只有精品| 中文字幕一区二区视频在线观看| 2001天天操| 国产精品一二三区18| 亚州综合电影| 99re国产精品视频| 青青草玖玖爱| 亚洲欧美国产成人综合不卡| nuu12国产麻豆精品| 综合网色| 亚洲成人贴图| www老逼91| 美国黄片aaa| 欧美久久人妻少妇一区二区| 国产精品蜜乳AV| 欧美啪啪天堂| 亚洲国男人的天堂| 国产 日韩,欧美 自拍| 国产精品网站免费| 亚洲乱码国产乱码精网站| 精品少妇一区二区| 9九九九九视频在线观看| 精品人妻中文字幕高清| 少妇天堂网络| 玖玖爱免费观看视频| 久草看看看| 亚州成人A√| 日本激情免费大片| 国产视频第二页| 久久婷婷在线观看视频| 国产中文精品一区二区在线观看| 亚洲天堂少妇| www鬼畜国产男人的天堂| 另类小说综合网| 91模特在线观看| 91女人的网站| 成年人性爱日韩| 久久大黄片| 欧美色色人| 91婷婷伊人狠人| 国产人伦a片信息免费片| 老熟女天天操| 99操| 日韩无码专区| 成人26uuu| 极品出轨视频网站| 欧美美女在线高潮999| 亚洲乱码尤物193YW| 农村女一级毛卡片| 久久精品99| 丝袜性亚洲| 午夜大香蕉| 人人操人人操人人操人人操人人操人人人11.CM | 亚洲色狠| 99色在线| 热久久99999| 日韩乱码Av| 国产吞精a级片激情电影| www.99色| 青青草好吊色| 欧美91色| 91久久堂| 九久久九精品视频| 大香蕉五月天婷婷| 老熟妇一区二区三区…| 国产老太乱伦一区| 亚洲综合在线91| 人妻熟女一区二区| 日韩激情视频| 国产精品91一样| 久热伊人| 在线啊v一区| 日韩亚洲国产视频| 三级日韩一区二区三区| 东京热男人天堂| 青青草五月份天| 啊啊啊啊啊好舒服视频| 91jk色拍| 日本九九久久99播| 爱爱动态120秒| 丁香五月AV| 人人扣人人操| 久草福利在线资源站| 多毛小伙内射老太婆| 日韩成人精品| 自拍偷拍第26| 日本韩高清无砖码22o| 97免费视频在线| 欧美日韩色| 精品玖九九久| 九久久精| 日韩欧视频| 国语精品av| 成人九九| 欧美在线电影| 农村少妇久久久久久久| 97中文综合| 后入人妻无码| 精品一区二区三区18| 男人的天堂com| 亚洲黄色电影| 一本久道久久综合狠狠爱一密臀精| 日韩内| 日韩精品-原创伙伴| 久久春色| 天堂v无码免费视频| 日韩成人性日韩成人性爱视频在线免费观看 | 精品少妇999| 久操精品| 99亚洲国产精品色一区二区三区| 国内精品嫩模A∨私拍小视频| 天天插网| 色优久久| 婷婷香蕉欧美在线一区二区三区| 亚洲另类综合欧美| 天天综合网国产| 精爱久久| 偷拍五区| 久久大香蕉97| 一级二级在线观看|