国产成人欧美一区二区三区vr_久久国产精品人人爽人人爽_国产精品永久免费播放_肉欲啪啪a∨无码精品一区二区_国产超短裙jk丝袜在线_亚洲AV片高清资源在线观看_国模无码一区二区三区久久_国产成年人未进视频_中文字幕无码精品夜_一区二区三区在线视频免费看_亚洲成AV人片在线观看网址_日本激情视频高清综合久久_亚洲午夜视频福利_国内大量揄拍人妻精品視_久久国产精品福利二区三区

ARTICLE DETAIL

資訊詳情

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

SpringBoot校園二手交易平臺(tái)實(shí)戰(zhàn):從數(shù)據(jù)庫設(shè)計(jì)到并發(fā)下單部署全解析

SpringBoot校園二手交易平臺(tái)實(shí)戰(zhàn):從數(shù)據(jù)庫設(shè)計(jì)到并發(fā)下單部署全解析 簡介在Java后端開發(fā)中SpringBoot憑借自動(dòng)配置機(jī)制大幅降低了環(huán)境搭建成本已成為構(gòu)建企業(yè)級(jí)應(yīng)用的主流框架。而校園二手交易平臺(tái)作為典型的業(yè)務(wù)閉環(huán)項(xiàng)目天然覆蓋用戶認(rèn)證、商品狀態(tài)機(jī)、訂單并發(fā)控制等核心場景非常適合用來理解框架原理與工程實(shí)踐的配合。圍繞這一主題文章從業(yè)務(wù)模塊拆分出發(fā)梳理了用戶、商品、交易三大核心域的表結(jié)構(gòu)設(shè)計(jì)方法強(qiáng)調(diào)了價(jià)格用分存儲(chǔ)、狀態(tài)流轉(zhuǎn)、事務(wù)邊界等細(xì)節(jié)同時(shí)深入解析了基于樂觀鎖的防超賣下單邏輯以及JWT鑒權(quán)、文件上傳、Docker部署等落地技術(shù)。對(duì)于正在準(zhǔn)備畢業(yè)設(shè)計(jì)或希望提升SpringBoot實(shí)戰(zhàn)能力的開發(fā)者這套完整方案既提供了可復(fù)用的數(shù)據(jù)庫設(shè)計(jì)方法論也給出了從源碼到可運(yùn)行系統(tǒng)的避坑指南。 做畢設(shè)選題的時(shí)候十個(gè)Java方向的人里有九個(gè)會(huì)刷到“校園二手交易平臺(tái)”這句話毫不夸張。但真正把源碼下載下來能順利跑起來、還能跟面試官講清楚技術(shù)點(diǎn)的人十個(gè)里未必有一個(gè)。我做過一套基于SpringBoot的校園二手交易平臺(tái)源碼和數(shù)據(jù)庫設(shè)計(jì)都完整整理過這中間踩了不少坑——SpringBoot版本兼容、MySQL表結(jié)構(gòu)反復(fù)推倒重來、并發(fā)下單一不小心就超賣。這篇文章就把這套項(xiàng)目的經(jīng)驗(yàn)從頭梳理一遍不堆砌源碼文件而是把模塊劃分、數(shù)據(jù)庫設(shè)計(jì)、核心代碼、部署坑點(diǎn)以及面試怎么答都講透。無論你是剛學(xué)完Java基礎(chǔ)想找項(xiàng)目練手還是準(zhǔn)備用SpringBoot做畢業(yè)設(shè)計(jì)或者想從“會(huì)抄代碼”進(jìn)步到“能講設(shè)計(jì)”這篇都值得認(rèn)真看完。1. 為什么這個(gè)項(xiàng)目比“合租系統(tǒng)”“博客系統(tǒng)”更適合做Java練手項(xiàng)目1.1 校園二手交易的業(yè)務(wù)閉環(huán)決定了它的技術(shù)含量很多人選畢設(shè)題目時(shí)會(huì)考慮圖書管理系統(tǒng)、博客系統(tǒng)、在線商城。這些系統(tǒng)確實(shí)簡單但做完之后你會(huì)發(fā)現(xiàn)它們大多只是“多個(gè)表的CRUD”沒有多少業(yè)務(wù)邏輯可講。校園二手交易平臺(tái)不一樣它有自己的完整業(yè)務(wù)閉環(huán)學(xué)生注冊(cè)后進(jìn)行校園身份認(rèn)證認(rèn)證通過后可以發(fā)布閑置買家通過搜索、分類、收藏找到商品買賣雙方經(jīng)過站內(nèi)聊天溝通細(xì)節(jié)買家下單后走站內(nèi)余額模擬支付賣家發(fā)貨、買家確認(rèn)收貨交易完成后雙方可以互相評(píng)價(jià)如果出現(xiàn)問題還有舉報(bào)和申訴流程管理員在后端進(jìn)行商品審核、用戶封禁、數(shù)據(jù)統(tǒng)計(jì)。這套流程決定了項(xiàng)目不是一堆孤立的表而是各個(gè)模塊相互咬合的狀態(tài)流轉(zhuǎn)。比如商品不是刪掉就消失而是有草稿、待審核、在售、預(yù)訂、已售、強(qiáng)制下架的狀態(tài)路徑訂單不是簡單的insert而是先檢查商品是否在售再樂觀鎖更新商品狀態(tài)最后創(chuàng)建訂單、扣減余額。這些邏輯寫下來才是真正的“業(yè)務(wù)開發(fā)”。1.2 為什么要選SpringBootMyBatis-Plus這套組合選型的理由很多人答不上來。我的看法是SpringBoot的價(jià)值不是“快”而是它通過自動(dòng)配置把環(huán)境差異收斂掉了。你在A機(jī)器上能跑換到B機(jī)器也能跑這對(duì)訓(xùn)練項(xiàng)目和實(shí)際交付太重要了。MyBatis-Plus把單表CRUD封裝好了寫起來比原生MyBatis少很多代碼但它不是萬能藥像訂單狀態(tài)變更、庫存扣減這種強(qiáng)一致性的寫操作我都是寫自定義SQL加樂觀鎖完全依賴BaseMapper是不合適的。我在這套項(xiàng)目里的推薦組合是SpringBoot 2.7.18 JDK 8 MySQL 8.0 MyBatis-Plus 3.5.3 Redis MinIO JWT。這套組合偏保守但穩(wěn)定。后面章節(jié)我會(huì)專門說為什么不要一上來就追SpringBoot 3.x。2. 模塊拆解先畫清楚“人、貨、單”三個(gè)核心域2.1 用戶域不是簡單地建一張user表用戶模塊最容易被做成一張只包含賬號(hào)密碼的user表我見過很多半成品就是這么干的。但校園二手平臺(tái)有個(gè)特殊點(diǎn)用戶需要證明自己是該校學(xué)生。于是在user表外我還設(shè)計(jì)了一張student_certification表用來存學(xué)號(hào)、姓名、所在院系、學(xué)生卡圖片URL、認(rèn)證狀態(tài)。user表本身只放通用登錄字段認(rèn)證信息單獨(dú)放原因是認(rèn)證是一次性的低頻操作拆開既能減少user表寬度也方便后臺(tái)審核時(shí)只查認(rèn)證表。user表核心字段id、username、password、nickname、avatar、phone、role0普通用戶1管理員、status0禁用1正常、points信譽(yù)積分、create_time、update_time。密碼存的是BCrypt加密后的字符串不是明文。這里有一個(gè)容易被忽略的點(diǎn)用戶狀態(tài)和登錄邏輯要聯(lián)動(dòng)。如果賬號(hào)被管理員禁用登錄時(shí)不能只查用戶名和密碼還要校驗(yàn)status字段否則被處罰的用戶依然可以正常登錄。2.2 商品域發(fā)布到下架的完整狀態(tài)機(jī)商品域的靈魂是狀態(tài)。如果你的goods表里只有一個(gè)status字段但代碼里沒有一套狀態(tài)流轉(zhuǎn)邏輯那和普通文章表沒有區(qū)別。我的狀態(tài)設(shè)計(jì)為0草稿、1待審核、2在售、3預(yù)訂中、4已售出、5下架、6管理員強(qiáng)制下架。為什么要有待審核因?yàn)椴皇撬袑W(xué)生都會(huì)規(guī)范發(fā)布商品后臺(tái)管理員需要審核圖片和標(biāo)題防止出現(xiàn)違規(guī)品類。為什么要區(qū)分“預(yù)訂中”和“已售出”因?yàn)榫€下交易存在“我先預(yù)訂然后當(dāng)面交付”的環(huán)節(jié)沒有這個(gè)狀態(tài)用戶并發(fā)下單就控制不住。商品表字段包括id、user_id發(fā)布者、category_id、title、description、price單位分、original_price、quality成色、image_urlsJSON數(shù)組存圖集、status、stock_version樂觀鎖版本號(hào)、view_count、create_time、update_time。價(jià)格我建議統(tǒng)一用“分”來表示不要用double否則訂單金額計(jì)算會(huì)出現(xiàn)浮點(diǎn)誤差這是個(gè)老生常談但很容易踩的坑。2.3 交易域二手交易不是標(biāo)準(zhǔn)電商訂單是所有模塊里最容易出錯(cuò)的。二手交易和標(biāo)準(zhǔn)電商最大的差異是庫存永遠(yuǎn)是1不允許超賣。標(biāo)準(zhǔn)電商可以扣減庫存二手場景則應(yīng)該是“下單即鎖定商品”成功創(chuàng)建訂單后商品狀態(tài)從在售變?yōu)轭A(yù)訂中其他人不能再下單。所以order表不能單純當(dāng)作訂單記錄表它實(shí)際承擔(dān)了商品狀態(tài)的“觸發(fā)器”。訂單表字段id、order_no、goods_id、buyer_id、seller_id、amount單位分、status0待支付1待發(fā)貨2待收貨3已完成4退款中5已關(guān)閉、pay_type0站內(nèi)余額1線下交付、pay_time、deliver_time、receive_time、close_time、remark、create_time。另外還要一張trade_record表用來記錄每次余額扣減和收入增加類似流水賬對(duì)賬和排查問題都用得上。3. 數(shù)據(jù)庫設(shè)計(jì)9張核心表4張擴(kuò)展表表和表之間的業(yè)務(wù)邏輯要能講明白3.1 核心表的結(jié)構(gòu)設(shè)計(jì)與建表SQL數(shù)據(jù)庫設(shè)計(jì)不能一上來就建表而是先把業(yè)務(wù)對(duì)象拆成“主表子表狀態(tài)流水”四個(gè)層次。以訂單為例orders是主表記錄一次交易的核心內(nèi)容訂單操作記錄是流水表記錄狀態(tài)變更歷史如果涉及退款還要有refund_record表。下表是我歸納出的核心表清單表名職責(zé)關(guān)鍵字段user賬號(hào)登錄與基本信息username、password、role、statusstudent_certification學(xué)生認(rèn)證資料user_id、student_no、campus_card_url、auth_statusgoods_category商品分類name、parent_id、sortgoods商品信息user_id、category_id、status、stock_versiongoods_image商品圖片goods_id、url、sortorders訂單主表order_no、goods_id、buyer_id、seller_id、statustrade_record余額流水user_id、type、amount、balance_before、balance_afterfavorite收藏user_id、goods_id、create_timemessage站內(nèi)私信from_user_id、to_user_id、content、is_read這里給出goods表的建表SQL注意索引和注釋CREATE TABLE goods ( id bigint(20) NOT NULL AUTO_INCREMENT, user_id bigint(20) NOT NULL COMMENT 發(fā)布者ID, category_id bigint(20) DEFAULT NULL COMMENT 分類ID, title varchar(120) NOT NULL COMMENT 標(biāo)題, description text COMMENT 描述, price bigint(20) NOT NULL COMMENT 價(jià)格單位分, original_price bigint(20) DEFAULT NULL COMMENT 原價(jià)單位分, quality tinyint(4) DEFAULT NULL COMMENT 成色1-10, status tinyint(4) NOT NULL DEFAULT 0 COMMENT 0草稿 1待審核 2在售 3預(yù)訂中 4已售出 5下架 6強(qiáng)制下架, stock_version int(11) NOT NULL DEFAULT 0 COMMENT 樂觀鎖版本號(hào), view_count bigint(20) DEFAULT 0 COMMENT 瀏覽量, create_time datetime DEFAULT NULL, update_time datetime DEFAULT NULL, PRIMARY KEY (id), KEY idx_category_status (category_id,status), KEY idx_user_id (user_id), KEY idx_create_time (create_time) ) ENGINEInnoDB DEFAULT CHARSETutf8mb4 COMMENT商品表;注意幾個(gè)設(shè)計(jì)細(xì)節(jié)價(jià)格用bigint存“分”不用decimal避免MyBatis里類型轉(zhuǎn)換麻煩也方便Long接收status加上category_id聯(lián)合索引因?yàn)槭醉摲诸愓故臼亲畛R姷牟樵儓鼍皥D片不單獨(dú)建表用goods.image_urls字段存JSON數(shù)組減少一次關(guān)聯(lián)查詢?nèi)绻麑?duì)圖片查詢很頻繁再拆表3.2 擴(kuò)展表留言、舉報(bào)、通知、瀏覽記錄核心表之外要支撐完整業(yè)務(wù)閉環(huán)還需要四張擴(kuò)展表。message表站內(nèi)私信from_user_id、to_user_id、content、is_read、create_time。站點(diǎn)內(nèi)聊天時(shí)需要根據(jù)from_user_id和to_user_id查會(huì)話記錄這里可以加聯(lián)合索引(from_user_id, to_user_id, create_time)report表舉報(bào)target_type舉報(bào)商品還是評(píng)論、target_id、reason、status、handle_user_id、handle_time。后臺(tái)管理員處理舉報(bào)后狀態(tài)要能回溯notice表通知user_id、title、content、type、is_read。比如訂單狀態(tài)變化、審核結(jié)果都要推通知給用戶browse_record表瀏覽記錄user_id、goods_id、browse_time。用瀏覽記錄做“猜你喜歡”時(shí)查詢最近N條記錄這些擴(kuò)展表不一定每個(gè)頁面都用到但設(shè)計(jì)時(shí)先留好回頭加功能時(shí)就不用再動(dòng)大表。我的習(xí)慣是凡是需要追溯歷史的信息都單獨(dú)建流水表不要在原表上改得面目全非。3.3 索引和事務(wù)設(shè)計(jì)索引不是越多越好事務(wù)也不是越寬越好很多初學(xué)者拿到表結(jié)構(gòu)后把所有字段都加一遍索引這是不對(duì)的。索引會(huì)降低寫入速度占用磁盤空間。這個(gè)項(xiàng)目里真正熱點(diǎn)查詢是商品列表按分類、狀態(tài)、時(shí)間排序商品標(biāo)題模糊搜索訂單按買家或賣家查列表交易流水按用戶查對(duì)應(yīng)的索引就是goods(category_id, status, create_time)、goods(title)全文索引或簡單用LIKE、orders(buyer_id, status)、orders(seller_id, status)、trade_record(user_id, create_time)。注意不要給description加索引大字段加索引沒意義。事務(wù)設(shè)計(jì)更重要。下單這個(gè)操作需要把“更新商品狀態(tài)”“創(chuàng)建訂單”“扣減買家余額”“增加賣家余額”“寫入交易流水”放在同一個(gè)事務(wù)里任何一個(gè)失敗都要回滾。另外事務(wù)不是包得越寬越好。查詢操作不要加Transactional否則數(shù)據(jù)庫連接占用時(shí)間太長高并發(fā)時(shí)會(huì)把連接池打滿。4. 核心源碼解析把登錄、商品發(fā)布、下單這三段代碼吃透4.1 JWT登錄鑒權(quán)的完整鏈路登錄模塊我用JWT做無狀態(tài)鑒權(quán)。服務(wù)端不保存Session客戶端每次請(qǐng)求在Header里帶一個(gè)Authorization: Bearer token攔截器校驗(yàn)token合法性并從token里取出當(dāng)前用戶ID和角色。這樣做的優(yōu)點(diǎn)是方便前后端分離缺點(diǎn)是需要自己處理token過期和續(xù)期。JwtUtil核心代碼public class JwtUtil { private static final String SECRET your-secret-key; public static String generateToken(User user) { return Jwts.builder() .setSubject(user.getId().toString()) .claim(username, user.getUsername()) .claim(role, user.getRole()) .setIssuedAt(new Date()) .setExpiration(new Date(System.currentTimeMillis() 3600_000)) .signWith(SignatureAlgorithm.HS256, SECRET) .compact(); } public static Long getUserId(String token) { Claims claims Jwts.parser() .setSigningKey(SECRET) .parseClaimsJws(token) .getBody(); return Long.valueOf(claims.getSubject()); } }攔截器里要注意兩點(diǎn)一是白名單放行比如登錄、注冊(cè)、商品瀏覽、圖片訪問不需要token二是用戶被禁用后已經(jīng)發(fā)出的token要立即失效。我的處理方式是在Redis里存一個(gè)黑名單管理員封禁用戶時(shí)把該用戶的token版本號(hào)加1攔截器里比對(duì)版本號(hào)不匹配就拒絕訪問。4.2 商品發(fā)布的實(shí)現(xiàn)文件上傳與參數(shù)校驗(yàn)商品發(fā)布有兩個(gè)核心點(diǎn)圖片上傳和字段校驗(yàn)。圖片上傳我用MinIO做對(duì)象存儲(chǔ)不把圖片文件存到數(shù)據(jù)庫。MinIO兼容S3協(xié)議本地部署很方便和OSS相比沒有外網(wǎng)依賴。上傳流程是前端用MultipartFile上傳圖片后端把文件流轉(zhuǎn)成輸入流寫入MinIO返回圖片URL然后把URL數(shù)組存入goods.image_urls字段。代碼示例PostMapping(/goods) public Result addGoods(RequestBody Valid GoodsDTO dto, RequestHeader(Authorization) String token) { Long userId JwtUtil.getUserId(token); goodsService.addGoods(userId, dto); return Result.ok(); }GoodsDTO里用javax.validation注解做入?yún)⑿r?yàn)比如NotBlank(message 標(biāo)題不能為空)、NotNull(message 價(jià)格不能為空)。這里有個(gè)小經(jīng)驗(yàn)不要相信前端傳的任何值特別是status。用戶提交商品時(shí)status只能固定為待審核不能讓前端傳什么就存什么否則可以繞過審核直接上架。4.3 下單防并發(fā)樂觀鎖把“庫存為1”的坑填平下單是這個(gè)項(xiàng)目里最有技術(shù)含量的方法。前面說過二手商品庫存永遠(yuǎn)是1所以不能用常規(guī)的“先查庫存再扣減”否則并發(fā)請(qǐng)求同時(shí)通過檢查就會(huì)超賣。我的方案是使用自定義SQL加樂觀鎖Transactional(rollbackFor Exception.class) public Order createOrder(Long goodsId, Long buyerId) { Goods goods goodsMapper.selectById(goodsId); if (goods null || !goods.getStatus().equals(GoodsStatus.ON_SALE)) { throw new BizException(商品不存在或不在售); } int rows goodsMapper.lockStock(goodsId, goods.getStockVersion()); if (rows 0) { throw new BizException(手慢了商品已被下單); } // 生成訂單號(hào)、創(chuàng)建訂單、扣減買家余額、增加賣家余額 // 記錄交易流水 return order; }對(duì)應(yīng)的Mapper XMLupdate idlockStock update goods set status 3, stock_version stock_version 1 where id #{goodsId} and status 2 and stock_version #{stockVersion} /update這段SQL的作用是只有當(dāng)商品仍然是“在售”狀態(tài)且版本號(hào)沒有變化時(shí)才會(huì)更新成功。update影響行數(shù)為0說明商品已經(jīng)被別人下單或狀態(tài)已變化。我之所以不用select for update悲觀鎖是因?yàn)橥患唐凡l(fā)下單的沖突概率其實(shí)不高樂觀鎖在絕大多數(shù)情況下不會(huì)沖突對(duì)數(shù)據(jù)庫的壓力更小而悲觀鎖會(huì)讓所有請(qǐng)求都排隊(duì)等待商品詳情頁也可能被鎖影響。5. 從源碼到可運(yùn)行SpringBoot版本、MySQL初始化、Docker部署這些坑一次說清5.1 環(huán)境選型JDK8還是17SpringBoot 2.7.x還是3.x我見過很多新手用IDEA創(chuàng)建項(xiàng)目時(shí)默認(rèn)生成SpringBoot 3.x然后引入老教程的MyBatis-Plus和各類工具結(jié)果就是一堆jar包沖突。SpringBoot 3.x基于Jakarta EE之前寫javax.validation、javax.servlet的地方全部要改成jakarta.*MyBatis-Plus必須用3.5.5以上版本很多老博客里的寫法直接編譯不過。所以個(gè)人建議做校園二手交易這個(gè)體量的項(xiàng)目直接選擇SpringBoot 2.7.18JDK用8或11。它支持JDK17但不用新特性就不影響。等以后真正需要升級(jí)再遷現(xiàn)階段沒必要給自己增加“遷移類錯(cuò)誤”的排查負(fù)擔(dān)。5.2 MySQL初始化和application.yml的完整配置數(shù)據(jù)庫初始化時(shí)要注意如果MySQL是8.0連接URL必須加上時(shí)區(qū)和SSL參數(shù)否則啟動(dòng)會(huì)報(bào)錯(cuò)。我的application.yml關(guān)鍵配置如下spring: datasource: url: jdbc:mysql://localhost:3306/campus_secondhand?useUnicodetruecharacterEncodingutf8serverTimezoneAsia/ShanghaiuseSSLfalse username: root password: yourpassword driver-class-name: com.mysql.cj.jdbc.Driver redis: host: localhost port: 6379 servlet: multipart: max-file-size: 5MB max-request-size: 20MB mybatis-plus: mapper-locations: classpath:mapper/*.xml configuration: log-impl: org.apache.ibatis.logging.stdout.StdOutImpl jwt: secret: your-secret-key expire: 3600000啟動(dòng)前先執(zhí)行CREATE DATABASE campus_secondhand DEFAULT CHARACTER SET utf8mb4;再導(dǎo)入SQL腳本。這里容易踩的一個(gè)坑是數(shù)據(jù)庫字符集沒設(shè)utf8mb4導(dǎo)致發(fā)布商品時(shí)中文表情符號(hào)存不進(jìn)去。5.3 Docker部署和常見報(bào)錯(cuò)Docker部署SpringBoot項(xiàng)目其實(shí)很簡單本質(zhì)是打成一個(gè)jar包再丟進(jìn)容器。我給一個(gè)最簡DockerfileFROM openjdk:8-jdk-alpine VOLUME /tmp ARG JAR_FILEtarget/*.jar COPY ${JAR_FILE} app.jar EXPOSE 8080 ENTRYPOINT [java,-jar,/app.jar]構(gòu)建命令mvn clean package -DskipTests docker build -t campus-secondhand:1.0 . docker run -d -p 8080:8080 --name campus campus-secondhand:1.0下面是我排查過程中經(jīng)常遇到的幾個(gè)問題報(bào)錯(cuò)信息原因解決辦法The server time zone value is unrecognizedMySQL連接URL缺少時(shí)區(qū)參數(shù)在url后加serverTimezoneAsia/ShanghaiFailed to configure a DataSource啟動(dòng)時(shí)沒有找到數(shù)據(jù)源配置檢查application.yml是否在classpath數(shù)據(jù)庫是否已啟動(dòng)java.io.FileNotFoundException: /tmp/...容器內(nèi)沒有上傳目錄權(quán)限D(zhuǎn)ockerfile里加RUN mkdir -p /data/upload并掛載volumeOutOfMemoryError: insufficient memory容器內(nèi)存限制啟動(dòng)命令加-Xmx512m6. 這套代碼藏在SpringBoot框架里的面試考點(diǎn)防八股問倒6.1 自動(dòng)配置到底是怎么回事“SpringBoot為什么能自動(dòng)配置”是必問題。套用這個(gè)項(xiàng)目回答最合適項(xiàng)目里引入了spring-boot-starter-data-redisSpringBoot通過EnableAutoConfiguration去讀取META-INF/spring.factories或AutoConfiguration.imports里的自動(dòng)配置類再配合ConditionalOnClass(RedisOperations.class)、ConditionalOnMissingBean這類條件注解自動(dòng)幫我們創(chuàng)建RedisTemplate、StringRedisTemplate這些Bean。表面上是“自動(dòng)配置”本質(zhì)上還是條件和工廠的結(jié)合。如果你需要定制可以在自己的配置類里聲明一個(gè)RedisTemplate的BeanConditionalOnMissingBean檢測到已經(jīng)存在就跳過自動(dòng)創(chuàng)建。這段邏輯平時(shí)不顯眼但理解了之后排查“為什么我配置沒生效”會(huì)快很多。6.2 項(xiàng)目中哪些地方用到了AOP和事務(wù)事務(wù)用的是Transactional。面試官特別喜歡問“事務(wù)失效場景”我在項(xiàng)目里實(shí)際踩過createOrder方法調(diào)用本類另一個(gè)事務(wù)方法結(jié)果內(nèi)部方法的Transactional沒生效。原因很簡單Spring的事務(wù)是通過AOP代理實(shí)現(xiàn)的同類調(diào)用走的是this而不是代理對(duì)象所以代理切面根本沒執(zhí)行。解決辦法要么把內(nèi)部方法拆到另一個(gè)Service要么用AopContext.currentProxy()。AOP除了事務(wù)我還用它做管理員操作審計(jì)日志。比如審核商品、處理舉報(bào)這類后臺(tái)操作定義一個(gè)自定義注解AdminLog再寫一個(gè)Aspect切面在方法執(zhí)行前后記錄操作人、操作類型、操作參數(shù)、耗時(shí)。這樣比在每個(gè)Controller里手寫日志要清爽得多也展示了你對(duì)AOP的理解。6.3 表設(shè)計(jì)通用方法論和WMS數(shù)據(jù)庫設(shè)計(jì)是同一個(gè)套路有人問“WMS系統(tǒng)怎么設(shè)計(jì)數(shù)據(jù)庫表”時(shí)我意識(shí)到其實(shí)和二手交易平臺(tái)設(shè)計(jì)是同一套方法論??梢园选跋到y(tǒng)里所有重要業(yè)務(wù)對(duì)象”拆成四層主表記錄核心對(duì)象及其當(dāng)前狀態(tài)例如訂單表、入庫單表子表/明細(xì)表記錄核心對(duì)象包含的具體條目例如訂單明細(xì)、入庫單明細(xì)流水表記錄所有歷史變更例如交易流水、庫存變動(dòng)流水唯一業(yè)務(wù)單號(hào)每張主表都生成一個(gè)全局唯一的業(yè)務(wù)編號(hào)order_no、入庫單號(hào)并建立唯一索引用于冪等和問題追溯這套方法論不是只能用在校園二手平臺(tái)WMS里的庫存管理、ERP里的訂單處理本質(zhì)上都是這樣一層一層拆出來的。聊到這個(gè)不僅能體現(xiàn)你會(huì)寫SQL還能體現(xiàn)你對(duì)系統(tǒng)設(shè)計(jì)的思考深度。7. 持續(xù)迭代方向不要把項(xiàng)目停在“演示可用”7.1 什么情況下不需要拆微服務(wù)很多人做完單體項(xiàng)目就想往上堆Nacos、Gateway、Feign覺得微服務(wù)顯得“高級(jí)”。我也曾經(jīng)這么做過但最后發(fā)現(xiàn)沒有千萬級(jí)用戶、沒有多團(tuán)隊(duì)并行開發(fā)微服務(wù)帶來的服務(wù)治理成本遠(yuǎn)大于收益。校園二手交易平臺(tái)用單體架構(gòu)完全合理真正需要演進(jìn)的方向不是拆服務(wù)而是把單體的代碼質(zhì)量和可觀測性做好比如加接口限流、日志采集、慢SQL監(jiān)控。7.2 想真正落地還需要補(bǔ)什么要讓這套系統(tǒng)在學(xué)校真正投入使用至少要補(bǔ)齊這幾塊真實(shí)支付微信/支付寶需要商戶資質(zhì)校園場景可以用模擬支付演示但代碼里要預(yù)留支付回調(diào)接口消息推送下單后需要通知賣家可以用RabbitMQ做異步通知避免下單響應(yīng)時(shí)間被郵件或短信拖慢內(nèi)容審核發(fā)布商品時(shí)圖片和文字需要先經(jīng)過云服務(wù)審核防止違規(guī)內(nèi)容數(shù)據(jù)脫敏管理員查看用戶列表時(shí)手機(jī)號(hào)、學(xué)號(hào)不能明文展示接口防刷用Redis實(shí)現(xiàn)滑動(dòng)窗口限流避免商品詳情和登錄接口被惡意刷最后分享一個(gè)很實(shí)際的調(diào)試技巧。下單并發(fā)是一個(gè)容易翻車也特別容易出彩的測試點(diǎn)在本地啟動(dòng)項(xiàng)目后用JMeter建20個(gè)線程同時(shí)搶同一件商品觀察請(qǐng)求返回和數(shù)據(jù)庫里該商品的stock_version、status變化。我第一次跑的時(shí)候出現(xiàn)了兩條訂單同時(shí)成功的現(xiàn)象后來正是在這條復(fù)現(xiàn)路徑上定位到問題——更新SQL漏了status2條件導(dǎo)致已經(jīng)預(yù)訂的商品還能被update。很多表面上“有源碼就完事”的項(xiàng)目恰恰在這種并發(fā)細(xì)節(jié)里見高下。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
资源在线观一 二| 啊啊啊在线观看免费视频| 精品十八在线观看| 色五91| 狠狠干2020| 天天色粽合合合合合合合| 97超碰美女| 极品白嫩福利在线| 性爱久久| 长长久久免费视频| 91超级碰| 懂色AV蜜臀无码精品APP| 啊啊啊啊无码| 欲色综合| A一级色女| 婷婷五月天激情四射| 凹凸视频在线一区二区| 中文字幕乱妇免费视频| 60秒免费小视频| 丁香五月综合| 亚洲欧美一区二区三区一猛片| 探花精品 一区二区| 岛国不卡超碰护士AV在线播放| 亚洲无套久久嗯嗯| 色婷婷狠狠| 欧美一级A片不卡视频。| 免费试看60秒| 91高清欧美| 九九九九九精品十六| 人妻久热在线| WWW4虎| 久久精品免费| 无码免费精品高清| 中文字幕一区二区韩| 人人妻人人澡人人爽久久av| 亚洲图片 激情小说| 97在线欧洲| 91 手机在线播放 绯色| 日本中文字幕一区| 日日干男人的天堂| 蜜臀久久久99久久久久| 狠狠爱大香蕉| 中文字幕黑人大片| 蜜桃色院一区久久 | 亚洲资源网| 久久免费中文字幕在线观看| 色色亚洲| 男人的天堂2019AV| 日韩中文字幕熟妇人妻| 午夜精品久久久久久久99热影院| 亚洲成人精品久久久| 久超碰在| 加勒比在线视频| 久久激情五月| 啪啪91| 日韩不卡a级视频专区| 国产特级毛片AAAAAA高潮流水 | 国产小u女在线观看| 国产精品一二三在线看| 日本福利二区视频| 99视频精品| 日韩人妻制服丝袜av| 黄在线| 新久久AV| 亚洲精品99| 大香蕉黄色一区| 色婷婷九月天天综合| 日韩一级成人毛片免费观看 | 人人么人人操| 超碰97人人cao| av网站在线观看了| 91亚·色| 欧美视频第二页| 久久国模av| 一直超碰| AV女资源| 国产精品久久久久无码A√| 精品毛片av一区二区| 国产自产自拍| 能看的AV| 国产丰满熟夫69mpp| 极品少妇99| 狠狠干2020| 伊人九九九| 亚洲精品九九九| 无码不卡亚洲成?人片| 国产精品女生av| 色综合网1| 久久黄色网址| 97se亚洲综合自| av毛片aaaaa免费看| 91丝袜| 777琪琪午夜免费A片| 精品一区二区成人动漫| 九一屌逼| 久久久久密臀视频| 尤物网站91| 二男一女成人A片| 志村玲子视频一区二区| 夜夜嗨一区二区三区三州加勒比| WWW.操逼.COM| 色青青久久影视| 偷拍欧美激情| 欧美亚洲清纯| 精品国产无码中文| 精品久久視頻在线| 久久九九热| 黄色免费网| 色综合九九| 成人老鸭窝人人在线视频| 色哟哟av| 婷婷综合激情| 亚洲蜜臀精品视频久久| 美国aaaaa一级黄片| 久久女人视频| 男人的天堂com| 18禁美女裸体无遮挡啪啪| 亚洲精品久| 密臀成人视频久久久| 在线人成亚洲视频免费观看| 久操视频免费在线观看| 色欧美在线| 国产日韩精品人妻久久久久色欲网站| 美日韩一卡二卡三卡免费人妻精品| 91超碰丝袜制服| 少妇无码av专区线| 神马久久69| 丁香婷婷五月| 少妇人妻精品| 精品国产一区二区三区在线播出| 日韩女优中文字幕| 日本成人在线不卡一区二区三区| 欧美亚洲日本视频久久久| 久久爱超碰网| 懂色中文一区二区三区| 超碰到97情色| 久久久国产成人一区二区三区在线| 97精品国产精品免费观看| 美国精品国产精品| 色妇91| 免费一级特黄特色大片在线观看看| 欧美色图天堂网m| 91色色网站| 99r九九| 性综合网| 亚洲AV免费在线观看| 久久午夜色播影院免费高清| 色综合中文字幕不卡| 中国特猛少妇色xxx| 囯产乱伦一区二区三女| 精品无av| 99RE在线视频精品,这里只有精品| 色欲无码人妻日韩欧美精品| 啊啊啊啊好疼视频| a级理论午夜日本| 4tube欧美女厕所| 大香蕉黄色一区| 精品97久久| 九九黄色网| 国内伊人久久久久久网站视频| 日韩三四五区| 人人摸人人摸人人干| 天天干1区2区在线| 五月综合激情| 国产精品4p在线观看| 丝袜综合| 国产成人无码久久精品| yiqicaoav| 久久久久久久久久久久久久久久9| 涩涩这里只有精品视频| 亚洲一区二区av| 亚洲Av无码成人精品国产| 草草草草视频| 蜜桃午夜视频一区二区| 丝袜内射| 9999久久久久| 欧美色www亚洲国产阿娇要播| 91处女视频在线观看| 玖玖玖玖精品国产剧情| 99人妻| 成人黄页| 操我啊啊啊啊啊| 人干人人人操人人摸| 日产精品久久久一区二区| 久久xxxx| 日韩乱中文| 九九热九九| 在线观看 99热| 国产欧美伊人| 五月婷婷激情| 成人免费福利在线观看| 亚洲婷婷丁香在线| 亚洲熟女av中文字幕| 好屌色综合| 精品夜夜澡人妻无码| 天天躁日日躁AAA片李宗瑞| 日本一区二区中文字幕久久| 亚洲成人在线乱码色午夜| 老熟女区| 亚洲国产一区二区三区在线 | 超碰碰97| 精品久久久久,69国产成人精| 欧美天天干| 丝袜亚洲综合| 欧美精品激情| 日韩三级av片| 97视频免费播放| 人妻喷水| 欧美日本视频一区| 9ⅰ久久久天天| 另类av综合久久| 久久秀这里有精品| 欧美后进式| 婷婷中文网| 午夜AV人气不卡| 亚洲国产另类在线中文| 亚洲综合欧美| 亚洲无码国产精品久久| 亚洲AV秘 精品久久老牛影视| 大屁股人妻女教师撅着屁股| 国产精品不卡高清在线观看| 偷拍精品一区二区三区| 欧美综合网在线| 欧美亚州综合网图片| 国产超碰欧美| 九七色图| 91亚洲欧洲| 亚洲在线欧美| 久久精品国产精品一区| 亚洲一区二区三区不卡国产欧美| 先锋色眉乱伦资源| 大屁股xxxxx| 久久免费精品视频免一| 婷婷在线视频| 日本三级日本三级三级人妇四虎| 中文字幕片| 后入人妻一区| 狠狠躁天天躁日日躁| 超碰欧美在线欧美| 欧美亚洲特P| 啊啊啊无码| 午夜男女爽爽大片免费观看| 岛国视频免费在线观看| 国产精品自产拍在线观看社区| 风流老熟女一区二区三区l| 91艹B视频| 国产做?爰片久久毛片?片美国| 六月丁香久久| 蜜臀久久99精品久久久久久久久| 99www.bibizy香蕉资源国产一区二区三区高清 | 69一区二区| 国产操逼网站亚洲一级黄色| 久综合国内精品自在自线| 国产成人午夜视频网址| 五月天婷婷影院| 91老熟女逼| 久久超碰av在线| 加勒比久久av| 不卡av免费在线网址| 国产精品一区二区校花| 97人妻色| 人妻天天爽| 男人 天堂 日 亚洲| 欧美最婬乱婬爆婬牲视频| 亚洲在线91| 中文字幕人成乱码熟女香港| 再深点灬舒服灬太大了好硬好爽| 肥臀熟女福利视频一区二区| 色色99| 一区二区三区男人的天堂| 91色狼| 草草网站影院白丝内射| 久久麻豆一区二区| 无码九九| 日本免费一级AAA大片器| 日日夜夜天天| 一本色道久久综合狠狠操| 国产一区二区二区按摩精品啪视频| 大屁股人妻女教师撅着屁股| 九九热免费视频| 日夜干射色啊| 亚洲AV成人精品网站在AV| 怡红院一区二区熟女人妻| 欧美狠狠弄| 欧美激情1区| 超97在线精品视频| 麻豆婷婷成人一二三| 日韩欧美女求操每天更新| 三级特黄60分钟播放| 偷拍欧美综合| 蜜区区视频79| 99综合| 视频黄站| 成年人性爱日韩| 91网18| 狠狠操狠狠操操| 99视频自拍| 日本最新1区2区3区| 亚洲欧洲无码bt精品合集| 亚洲91av| 九九九久久久| 97综合在线观看| 久久嫩草| 欧美天天综| 综合另类| 国产原创精品| 国产午夜福利专区综合| 亚洲情色五月天 | 色操逼网| 精品小视频在线| 亚洲在线网站| 精品少妇人妻| 高清在线不卡一区二区 视频| 欧美日韩成人| 国产1024在线播放| 久久久激情| 另类专区加勒比| 亚洲啪啪视频一区二区| 亭亭在线资源| 久99热| 黑人性欧美| 涩涩五月天| 四虎免费在线观看| 少妇诱惑视频| 狼狼色丁香久久婷婷综合五月| 久久成年精品| 欧美成人性爱视频免费观看| 久久久久婷婷精品av电影| 五月天大香蕉| 秋霞色色影院| a人欧美综合天堂麻豆| 欧美经典一区二区三区| 婷婷丁香人妻| 亚洲人妻熟妇三十三区| 九九aV| 精品熟女呻吟久久91| 18一区二区三区| 久艾草在线精品视频在线观看| 中文字幕视频一区视频二区| av天堂天堂av日韩| 亚州91| 日本黄色裸日本黄色裸体| 免费作爱一级视频| 精品97久久| 久久综合日韩亚洲欧美| 亚洲一级特黄大片在线播放91| 亚洲天堂一区二区| 免费看美国人人爽,人人操| 涩涩涩综合| 日韩黄色小说| 亚洲欧美中日韩| 國產尤物AV尤物在線觀看| 精品人妻少妇| av久日| 色久综合| 男人高清无码一区二区| 亚洲国产精品9999在线观看| 国产精品白丝www| 污污汅18禁网站在线永久免费观看| 亚洲综合大片| 天天影视网综合少妇| dy888午夜老子影视达达兔| 亚欧美天堂在线| 性爱乱伦网址| 2017人人操,人人摸| 亚洲天天自拍| 日本高清熟女久久一区| juliaann精品熟女一区| 综合欧美日本三级| 精品亚洲国产成人精品| 天天综合欧美综合| juliaann丝袜| 久草综合京东| 18一区二区三区| 日日骚 av| 白嫩91在线亚洲| 亚洲色人阁| 中文操逼字幕| 一区在线观看中文字幕| 日韩有码中文字幕女同性恋| 视频国产成人精品日本亚洲18| 性爱综合一区二区| 婷婷五月天久久久| 精精夜夜| 日本熟女免费視颖| 欧美精品久久96人妻无码| 在线岛| 亚洲综合九九| 欧美高潮| 天天爽夜夜爽夜夜爽精| www.狠狠干.coom | 婷婷激情五月天小说网| 欧美亚洲玖玖玖| 99精品综合久久久久五月天| 精品高清av中文字幕| 久久大香蕉| 九色 蝌蚪 熟女自| 日本天天操| 二三四区精品| 久久九九国产精品| 中文字幕欧美精品亚洲日韩蜜臀| 91neishe| 免费岛国一级片| 日本一区视频在线观看| 免费夜夜爱黄色视频毛片| 青青青草原| 久久婷综合| 大干人妻| 欧美日韩91| 啊啊啊轻点在线观看| 美女一区二区国产精品| …中文字幕亚洲乱,97人妻无码费视… | 婷婷去俺也去六月色| 日韩超碰精品综合| 综合av社区| 久久久成人精品| 久久综合99| 九九九九热| 激情小说亚洲图片| 91xingse| 天天看,天天做| 国产一级内射高清视频 | 国产精品视频内谢女人| 欧美在线官网| 搡老熟女老女人老熟妇免费视频| 七月婷婷综合| 九九九九九精品视频| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚| 澳门黄片一香蕉视频| 亚洲日本天堂| 磁力99AV| 色爱欲亚洲| 色婷婷激情| japan日本高清乱xxxx| 综合 亚洲 欧美| 国产美女91| 91精品久久久久久77777| 五月丁香网站| 丁香五月天堂网| 手机看av网站在线看| 欧美色视频在线| 日韩熟女乱伦中出| 2023天天操夜夜操| 少妇厨房愉情理伦片bd在线观看| 日日夜夜狠狠| 果冻国产精品麻豆成人av| 日韩色| 91处女在线观看| 国产伦精品| 高清无码人妻久久久一区二区三区aⅴ| 欧美一品道| 美女黑人91神马| 偷拍2020| 色路综合| 国产精品999aaa| 久久成年片色大黄全免费网站| 97超碰超| 女同女同恋久久级三级| 亚洲蜜桃V妇女| 丁香婷婷九月| 女同性恋一区二区三区精品视频| 91女神在线视频| 亚洲 另类 丝袜 自拍 动漫| 亚洲男人天堂2013| 亚州男人天堂| 国产精品激情久久久久久久| 青草av在线| 五月天色图| 欧美黑人91| 神马午夜久久| 国产网站在线播放| 国产suv精品一区二区四| 极品粉嫩少妇视频| 91精品国产91熟女| 翔田千里爆乳巨臀无码| 岛国片在线观看视频亚洲| 久久色人体| 午夜久久久| 久久久久久久久久久免费精品| 97人人操人人摸人人爱| 亚洲丝袜天堂| 欧洲精品一级二级精品综合视频综合 | 伊人操| 激情国产乱伦Av| 热久久91婷婷| 中文久久| 国产乱码久久| 蜜臀一区二区三区亚洲最新章节在线观看 - 高清蜜臀一区二区三区亚洲全集播放 | 天天看天天日| 黄色香蕉视频网站一区| 国产高清精品福利| 97 国产一区| 欧美Ⅴ性爱| 夜夜爽爽爽| 中文字幕av一区二区三区人妻少妇| 亚洲欧洲无码bt精品合集| 亚洲中文字幕97久久精品少妇| 亚精品无码毛片一区二区三区| 网友自拍第一页| 婷婷五月天社区| 日夜伊人网| 天天综合~91入口| 色综合av综合久久| 久久一区,青青青青草视频在线播放| 中文字幕在线免费观看 | 国产高清成人mv在线观看| 欧美丝袜激情| 亚洲色图欧美视频| 超碰97国产欧美| 夜夜嗨AV一区天天| 午夜成人爽爽爽爽A片李冰冰| 日本人体九九九九九九| 无码精品久久久久久亚洲| 国产精品麻豆成人AV艾秋| 91 丝袜在线播放| 91爱看| 亚洲乱码尤物193YW| 久久精品中文字幕女同| 五月色综合| 欧美日韩另类在线| 亚洲骚逼少妇| 人妻少妇三级| 青草视频在线看看看看看看看看看| 夜夜欢天天干| 欧洲精品区| 久久日韩毛| 强奸乱伦大香蕉网| 人人干黄色| 久久精品国产97欧美精品亚洲 | 狠狠操狠狠操操| 日韩图区 偷拍| 亚洲欧美综合网 | 国产AV高清AV无码| 妇女性内射冈站HDWWWCOM| 亚洲欧洲激情| 伦理弟一页| 91最新综合| 人妻嗯啊啊在线播放| 成人亚欧免费视频| www.久久制服糖| 啪啪综合网| 久久亚洲一区女同性恋中文字幕| 欧美大战久久久伊人| 91暧暧| 国产天美欧美| 操人妻丝袜高跟| 久久五月份| 麻豆人妻精品一区二区| 综合影院亚洲| 超碰成人国产| 免费一级毛片在线视频观看| 中文字幕一区二区韩| 伊人精品久久网站| 国产精品久久久久久无码红治院| 丁香九月 婷婷| www.色吧5.com| 日韩国产精品人妻无码久久久| 久久久蜜桃臀无码视频| 色噜噜狠狠色综无码久久合欧美| 亚洲第一页色网| 热99这里有精品综合久久| 亚洲情色欧美| 欧美成人四级在线播放| 一本一道vs波多野结衣| 国产高潮AA片免费看| 99re9在线| 精品一久久久| 深夜激情 | 在线综合 亚洲 欧美中文字幕 | 久久久久久久久久久久97| 亚洲天堂精品日韩电影| 搡老女人老妇女AAA一VU麻豆| 免费观看一区| 中国一区二区亚洲人妻| 日日夜夜天天| 欧美真人抽搐一进一出gif| 情色五月天久久久| 狼人久草| 久久极品伊人| 大但人体久久久久| 无码动漫av中文字幕| 狠狠操夜夜| 久久久久9久久久久| 国产AV天美传媒一区二区三区 | 午夜无遮挡男女啪啪视频| 久操婷婷| 国产不卡的视频| 欧美日韩免费性爱| 99re不伦| 张柏芝国产一区在线观看| 91成人在线免费视频| 欧美精品91| 日韩欧美加勒比| 天天天天干| 人妻熟妇一区二区三区| 日韩人妻中文视频| 高清不卡 中文 人妻| 操操逼视频| 爱爱动态试试看6 0秒| 久久夜夜| 久久久久久久 九九九九九九九| 日本三级精品| 女优免费一区二区永久| 九热中文字幕| 日韩专区数据列表-第3230页-精品国产一区二区三区香蕉 久久99熟女人妻中文字 | 69精品| 天天干天天干天天| 久久大黄片| 久久大香蕉手机高清视频| 丝袜综合网| 啊嗯好大视频在线观看| 国产精品ⅴ无码大片在线看.| 人妻大相焦在线| 午夜AV人气不卡| 青草精品视频一日本久久久久网站| 97干在线视频| 91被操| 欧美中字不卡| 啊啊啊不要啊啊受不了了视频在线| 91P0RNY大屁股人妻| 欧美色图色综合| 国精精品无码一二三区水多多| 国内外内射高清视频| 精人妻无码一区二区三区伊人直播 | 国产AV毛片| 99热精品在线观看| 亚洲影视高清三级-草1024榴社区入口-品爱AV| 99九九久久| 精品久热| 大香蕉国产中文自拍| 亚洲国产午夜真人一级片中文字幕精品黄网站| 丁香五月天激情| 亚州欧美综合| 五月天人妻综合| 国产精品久久久久久久久久久久久久久久久久 | 久久99久久99久久99人受| 国产中文福利| 国产精品高清2021在线| 999日韩中文精品观看视频。| 夫妻AV网站| 国产午夜激片Av毛片不卡| 久偷拍| 亚洲精品久久久久毛片A片拉屎| 亚洲啪啪性视频| 日韩97视频| 久久一区二区高清免费| 亚州中文字幕超碰97| AV天堂国产| 午夜性| 日韩簧片免费看| 亚州色站 日韩电影| 人妻色偷色噜| 国产大片精久久久久久| 又大又大又大又粗爽高潮观看 | 丝袜翘臀后入欧美校园亚洲自拍另类小说一区中文字幕少妇诱惑 | 爱妃国产亚洲视频中文字幕| 不卡九肏| 亚洲激情综合另类男同| 91日产欧美| 久干9操| 96精品久久久| 久久婷婷五月天| 天天日夜干| 天天透伊人| 日产欧美电影一区二区三区| 麻豆人妻少妇在线免费观看| 日韩黄片视频试看| 久久是精品| 丁香五月av| 张柏芝国产一区在线观看| 德国一二三不卡| 久久久久人妻二区精品叶可怜| 久久久久久久六六| 亚洲操逼网| 国产剧情在线| 亚洲天堂自拍| 天天色播亚洲综合网站| 亚洲资源站| yiren97| 欧美激情中文字幕另类小说| 欧洲综合色| 中文字幕 一区二区 亚洲无码| 国内精品久久人妻性色av| 欧美青青草视频| 色五月婷婷网| 天天谢天天干| 91美女视频。| 色婷婷综合久久久久中文一区二区| 天天操天天干一区二区| 蜜臀Av一区二区三区| 久久综合久久综合人久久夜精品| 日本免费人成视频播放120秒| 久艹免费| 大香网伊人久久综合网eew| 欧亚性爱视频免费看| 偷拍综合网| 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | 久久精9| 97碰在线视频| 五月婷婷六月丁香网址| 四虎影视国产精品| 大香蕉免| 蜜乳性色无码专日粉嫩骚逼AV| 亚洲丝袜诱惑| 91精品少妇搡搡搡| 台湾佬中文娱乐自偷自拍| 最新中文字幕在线亚洲| 最新日本中文字幕| nuu12国产麻豆精品| 久久久9视频| 黄色高清无码无码破解免费暗网| www.av家庭乱伦| 91精品婷婷国产综合久久| 性色乱AV一区二区| 亚洲一区二区性爱电影| 操www| 精品九区| 9九九国产| 91jk色拍| 六月婷激情福利天堂69| 日韩欧美国产一区二区三区四区| 国产区日韩区在线观看| 91精品操美女| 97色色,97综合| 激情一区二区三区在线观看| 久久高清欧美国产| 免费视频在线一区二区不卡| 好吊色综合| 超碰视97中文| 校园春色亚洲无码| 日少妇亚洲版| www.操| 日韩97超碰中文字幕| 色婷婷网| 伊人久操| 黄色片大香蕉| 亚洲导航深夜福利| 亚洲国产婷婷在线播放| 日婷婷| 日韩极品无码B| 亚洲久久久久| 国产60页| 男人天堂网址| 色色毛片| 国产女大学生AV| 蜜臀久久99精品久久久久久-DVD原版全| 亚洲精品97久久中文字幕| 天欧美在线| 视频黄站| 久久中文字幕人妻熟av女蜜柚| 日本中文字幕一区| 精国久久一区二区三区98| 亚洲欧美国产中文字幕| 欧美亚洲美少妇一区二区| 欧美中文字幕一区| 九九九久久久久| 超碰综合色| 日日AV加勒比| 欧美亚州色的图| 加勒比五月天| 超碰在线日韩一区| 国产精品农村妇女| 插入逼91| 国产精品视频自拍在线| 国产操偷| 少妇高潮对白在线观看| 亚洲天堂无码| 色97| 在线天堂999| 日韩一级二级三级免费看完整版国语版| 91久久18禁| 欧美色图小说综合| 97色综合中文网| 91人妻人人澡人人爽人人精品| 十八禁啪啪视频| 国产一区二区三区视频在线看| 色在线综合| 在线观看国产黄色| www.99热| 超碰人妻中文在线| 我想要啊 啊 啊| 97欧美综合| 婷婷av在线中文字幕| 国语av最新自产拍在线观看| 婷婷久久网| 春色校园综合网| 伊人久久亚洲中文字幕不卡| 欧美黑人与女人91| 国产无码精品无码| 国产女生在线| 久久久久久性爱片| 久久久久婷婷精品av电影| av中亚| 国产av波波国产精品| 日韩熟妇二区| 九九国产热| 999综合网| 成人性爱视频在线看| 中文字幕一区av| 久草综合视频| 女性91网站| 大香蕉专区| 性色中出| 99re99在线视频| 天天摸夜夜添无码小视频| 在线观看一卡二卡| 天天综合网~91入口| 大学生美女口爆| 一级黄色牲爱A级片| 色妹子A V| 色综合1991| 欧美A片中文字幕| 久操大香蕉| 在线情色电影 91大 | 天天综合网AV91| 大香蕉中文| 国产激情久久久| 蜜桃臀一区二区aV| 少妇一区二区三区精选| 九九热免费国产视频婷婷伊人| 久久机热| 国产色精品午夜大片| 九九成人精品| 日本爽爽爽爽爽爽免费视频| 婷婷五月天激情网| 四虎精品一区| 国产亚洲精品农村妇女| 在线亚洲精品久久久| 84YTCOM性无码| 激情五月天婷婷| 超碰精品97| 色噜噜精品一区二区三| 小骚逼被操的爽不爽| 亚洲日韩人妻中文字幕一区| 亚洲色人妻综合| 久久岛国| 日本三级韩三级99久久| 殴美色网| 人妻AV在线| 蜜臀久久99精品久久久久久成人小说| AV污污污污| 毛片麻豆91糖心精品毛情片| 欧美性爱无码一区二区三区| 日本五十路在线| 大香蕉黄色一级片免费看| 精品小视频在线| 欧美大香蕉久| 丝袜视频一区二区在线播放国产中文| 天天干天天舔| 九九热超碰97亚洲最新香蕉 | 伦伦成年午夜免费视频| 97超碰总站| 精品一区二区综合熟妇| 亚洲国产精品久久久久婷婷老年| 看黄片视频免费| 青青草一区二区三区四| 91丨豆花丨熟女| 好吊爽好吊爽在线视频,中文字幕精品一区二区日本,国产良妇出轨视频在线观看, | av中亚| 天堂国产AV| 久9re热视频这里只有精品| 久久综合乱子伦国产免费| 久热精品在线国产| 人人噜夜夜操| 日韩激情啪啪| 啊啊啊水好多| 泰国AV在线观看| 人人操 欧美| 美腿丝袜高跟网免费视频免费视频| 欧美性爱精品七区| 豆1无夜无码| 一本久道久久综合狠狠爱| 蜜桃久久一区二区| 天天日天天舔东京热| 无码最新| 日韩综合97p| 九九精品美女高溯喷水| 国产亚洲精品农村妇女| 亚洲 日本 不卡| 91在线美女| 3D污黄视频在线观看| 情色图区| 丁香婷婷激情五月天无毒不卡| 欧美极品性爱天天射| 亚洲欧洲综合| 人妻在线大香蕉| 国产伦乱91| 天天上日日上日韩精品| 精品久久久不卡一区二区| 色婷婷丁香五月| 国产在线综合网| 97伊人超碰| 欧美日韩人人早| 久久av成人无码免费| 亚洲男人天堂网| 天天色踪合| 九一亚洲国产免费| 日韩黄色成人性爱| 亚洲 暴爽 AV人人爽日日碰| 97视频新免费| 色999人与兽| 久久精品亚洲成a人天堂| 欧美黄页| 国际精品久久久| 久久久久久久久久久999| 亚洲操逼网| 萌白酱自拍视频| 96久久久| 四虎AV在线播放| 国产精品丝袜久久亚洲不卡| 婷婷亚洲中文字幕在线| 在线国产一区二区av| 欧美性xxxxx狂欢| 久久久青青草| 果冻传媒一区二区三区| 免费看污网址| 男人天堂站| 九九香蕉网| 国产 日韩 欧美高清| a片 xxxx受爽视频| 91天堂| 加勒比久久av| 日本一久是| 秋霞男人网| 亚洲一二三精品久久网| 99热精品在线播放| 26uuu性物| 欧美性爱无码一区二区三区| 日本不卡五区| 色姑娘综合网| 亚洲丰满很很操| 91精品免费| 日韩精品怡红院| 亚洲综合113页| 久久综合日韩亚洲欧美| 日韩欧美经典在线观看| 国岛片视频| 性爱边摸边日免费AV| 人妻9117c| 天天影视色香欲综合网小说| 久热最新在线杭州| 欧美精品97| 亚洲成人贴图| 日韩猛交| 亚洲欧美综合| 97在线欧| 大香蕉一人| 99热在线只有精品| 久伊人网78| 揉揉揉夜夜| 78精品| 美女啊啊啊啊啊| 久久九色| 人妻铁牛TV| 天天看精品动漫视频一区| 国内偷拍精品一区二区| 亚洲中文字幕熟女| 青青青国产手线观看视频2| 免费观看成人www精品视频| 波多野结衣AV无码一区| 99老司机精品视频在线观看| 色就色综合| 在线国产一区二区av| 麻豆国产精品午夜视频| 丰满人妻一区二区三区四区| 999亚洲国产视频| 亚洲成a人片在线观看中文!!!| 强奸乱伦麻豆| 激情99| 97色插| 东京热不卡视频| 97天天插| 深夜视频| 亚洲?V无码专区在线电影| 欧美性爱日韩性爱| 色区久久| 香蕉在线一区二区三区| 亚洲熟妇丝袜在线观看| 60秒免费小视频| 国产精品粉嫩福利在线| 91丝袜在线播放| 国产人妖的免费的视频| 男人a天堂手机在线版| 综合啪啪| 亚洲综合婷婷| 91久久国产综合久久| 91久久久老司机| 嗯嗯不要 视频| 日韩人妻有码免费视频| 五月丁香综合激情| 日韩中文字幕熟妇人妻| 五月天AV资源| 国产AAAAAABBBBB| 白嫩国模丰满一二三区| 天天透伊人| 成人女人国产| 99久草| 在线观看免费视频国产| 久久98| 亚洲第91页 | 黄色网址在线免费观看| 超碰超碰95| julia ann久久| 久久久久少妇| 亚洲九区| 欧美熟女丝袜| 亚洲欧美人妻| 亚洲Av无码成人精品国产| 神马精品视频| 亚州色图欧美色图| 91碰超| 大香蕉在线视频15| 日韩日韩日韩-国产乱码精品一区二区| PMv在线观看| 开心五月婷婷| 亚洲人精品久久久| 免费亚洲黄色视频在线观看 | 久久9久久| 一本久道在线综合视频| 欧美综合97www| 国产一线二线三线av| 蜜乳AV一区| 91中文精品日韩欧美在线| 国产青青综合伊人| A V视频日本| 骚逼一区二区| 日本孕妇一区二区视频操逼免费看 | 伦伦成年午夜免费视频| 在线人妻熟女一区二区三区四区五区| 久艹视频在线| 老司机老司机午夜影院| A啊啊在线观看| 人人人干干人人干| 美女啊啊啊啊pc| 欧美 亚洲 在线| 九九色逼| 九九九999久久久网站| 日韩av乱伦| 亚洲黄色网址| 亚洲精品官网在线观看| 精品一区二区三区四区外站| 国产肏逼网站| 激情图片亚洲色图| 成人性爱免费播放| 天天影视网综合少妇| 97天天日| 91 国产丝袜在线放观看| 999精品女人| 青青操青娱乐| 国产资源中文字幕在线| 国模一区二区三区| 亚洲超碰97| 97高清啪啪| 免费AV中文网在线观看| 久久精品免费| heyZO天然素人无码AⅤ专区| 色鬼在线综合| 久久精品久久九九精品| 欧美午夜视频| 在线a v| 熟女高潮精品一区二区| 99日韩| 久久久久99999| 丰满人妻一区二区三区在线| 国产精品白领在线观看| 欧美激情欧美精品| 99精品欧美一区二区三区桃色| 尤物视频偷拍免费| 久久精品性| 亚洲天堂男人的天堂| 色眯眯射| 欧美丰满少妇xx高潮| 在线观看啊啊啊啊啊| 中文字幕高清20页视频| 人人操人人摸人人骑| 狠狠夜色午夜久久综合在线| 丝袜美腿制服人妻二区中文字幕| 日韩成人人妻网站| 亚州少妇| 国产欧美精选激情视频| 男女香蕉一区二区| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 人妻碰碰碰碰碰碰| 日韩操逼HD| 亚洲熟女少妇免费视频| 丰满人妻一区二区三区免费,| 国内偷拍精品一区二区| 99色骚| 天天综合色| 丁香六月激情| 超碰午夜| 东京热激情视频一二三区| 激情抓乳插进去啪啪啪日韩| 0755午夜福利视频| 欧美亚洲丝袜美女电影| 去干网最新版| 欧洲亚洲国产综合在线| 伊人在线大香蕉视频久久| 内射中出日韩在线观看视频| 全球成人中文在线| www.av家庭乱伦| 蜜桃天美传媒AV一区二区三区| 麻豆久久久久久久久丝袜 | 男人的天堂三级| 亚洲图片欧美制度| 亚洲日韩美国人妻| 国产精品美女久久久久久网站| 伊人在线大香蕉视频久久| 天天天肏屄欧美| 一区二区三区欧美激情| 精品无码久久久久久国产浪潮| 日本不卡在线二区三区| 亚洲AV不卡在线观看尤物| 天堂九九九九九九九九九| 午夜福利成人免费视频| 国产丝袜美女在线一区| 久久春色| 日韩成人小视频| 99re在线视频国产| 欧洲免费一区二| 青青草中文-久久青草精品一区二区三| 噜噜噜在线视频| 白丝av| 九九热国产| 97伦综合| 天美一二三在线观看Av| 麻豆视频test| 中文字幕在线观看丝袜| 秋霞视频一区二区| 艹精品| 家庭乱伦国产| 成人免费视瓶| 男人天堂2017| 干B网| 色色九区| 男女啊啊啊啊啊| 久久久三区二区一区| 亚洲国产中文字幕| 少妇人妻激情四射| 99色日| 最新av在线| 97在线无精品| 国产精品密臀网在线观看| 后入内射蜜桃臀| 日本亚洲vr欧美不卡高清专区| 欧美精品丝袜久久久中文字幕| 激情欧美日韩女同久久| av资源在线观看少妇| 国产av强奸美女| 久操网无码在线| 亚洲精品官网在线观看| 日婷婷| 欧美一级AAAAAAA| 成人精品久久久午夜福利| 777超碰| 国产精品一区二区三区四区五区| 欧美色九九| 97综合在线| 亚洲久久久久| 97无码视频在线播放|