日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

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

SSM零食商城源碼實(shí)戰(zhàn):從環(huán)境搭建到訂單事務(wù)的完整解析

SSM零食商城源碼實(shí)戰(zhàn):從環(huán)境搭建到訂單事務(wù)的完整解析 簡(jiǎn)介這份資源是面向計(jì)算機(jī)專業(yè)學(xué)生與JavaWeb初學(xué)者的一套SSM框架零食商城系統(tǒng)完整項(xiàng)目適用于畢業(yè)設(shè)計(jì)、課程設(shè)計(jì)或框架練手場(chǎng)景。項(xiàng)目基于SpringSpringMVCMyBatis實(shí)現(xiàn)涵蓋用戶購(gòu)物模塊與后臺(tái)管理員模塊配套論文完整覆蓋需求分析、系統(tǒng)設(shè)計(jì)、數(shù)據(jù)庫(kù)E-R圖與數(shù)據(jù)表設(shè)計(jì)、詳細(xì)設(shè)計(jì)及測(cè)試說(shuō)明可幫助讀者理解從需求到落地的完整開發(fā)流程。壓縮包共1690個(gè)文件約128.98MB包含182個(gè)java源碼、88個(gè)jsp頁(yè)面、114個(gè)xml配置、128個(gè)js與104個(gè)css前端資源以及138個(gè)jar依賴、532個(gè)class編譯文件、292張jpg與32張png圖片素材另有1個(gè)sql建庫(kù)腳本和1個(gè)doc論文文檔目錄結(jié)構(gòu)清晰便于按模塊查閱與二次開發(fā)。目前已有6164人學(xué)習(xí)下載適合需要參考SSM分層架構(gòu)、數(shù)據(jù)庫(kù)建模與商城業(yè)務(wù)實(shí)現(xiàn)的讀者對(duì)照學(xué)習(xí)。1. 從一份 SSM 零食商城源碼說(shuō)起它到底能幫你解決什么如果你正在搜「javaweb零食商城系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)ssm項(xiàng)目含論文和源碼」大概率不是單純想買個(gè)零食而是被三件事卡住了畢業(yè)設(shè)計(jì)要交一個(gè)能跑起來(lái)的 JavaWeb 項(xiàng)目、簡(jiǎn)歷上需要一個(gè)能講清楚業(yè)務(wù)閉環(huán)的完整案例、或者課程設(shè)計(jì)要求你從零搭一套帶數(shù)據(jù)庫(kù)的電商系統(tǒng)。零食商城這個(gè)選題之所以被反復(fù)用是因?yàn)樗鼧I(yè)務(wù)邊界清晰——商品、分類、購(gòu)物車、訂單、用戶五個(gè)模塊就能撐起一個(gè)完整的 MVC 分層既不會(huì)像秒殺系統(tǒng)那樣復(fù)雜到失控也不會(huì)像留言板那樣單薄到?jīng)]東西可寫。SSM 指的是 Spring SpringMVC MyBatis 這套組合在 SpringBoot 一統(tǒng)天下之前它是 JavaWeb 項(xiàng)目最主流的落地方式也是很多高校課程設(shè)計(jì)和企業(yè)老項(xiàng)目維護(hù)的真實(shí)技術(shù)棧。你拿到的這份「含論文和源碼」的資料核心價(jià)值不在于代碼有多優(yōu)雅而在于它提供了一個(gè)可運(yùn)行、可拆解、可二次開發(fā)的完整參照物。這篇文章不替你復(fù)述論文而是把這份源碼從環(huán)境搭建、分層結(jié)構(gòu)、核心業(yè)務(wù)實(shí)現(xiàn)到常見(jiàn)翻車點(diǎn)按一線開發(fā)的視角拆開講一遍讓你能真正把它跑起來(lái)、改得動(dòng)、講得出。適合誰(shuí)看手里已經(jīng)有這份源碼但跑不起來(lái)的同學(xué)、想照著它自己重寫一遍的開發(fā)者、以及需要把 SSM 分層講清楚應(yīng)對(duì)答辯的人。下面從環(huán)境配置開始一步步來(lái)。2. 把 SSM 零食商城在本地跑起來(lái)環(huán)境、數(shù)據(jù)庫(kù)與啟動(dòng)順序2.1 先確認(rèn)技術(shù)棧版本別讓版本沖突背鍋拿到一份 SSM 源碼第一件事不是急著導(dǎo)入 IDE而是先看pom.xml或lib目錄確認(rèn)它用的是 Maven 還是傳統(tǒng) Web 項(xiàng)目結(jié)構(gòu)。這兩種結(jié)構(gòu)的導(dǎo)入方式完全不同搞錯(cuò)了會(huì)在 IDEA 里折騰半天。常見(jiàn)做法是先看項(xiàng)目根目錄有沒(méi)有pom.xml有就是 Maven 項(xiàng)目沒(méi)有就是傳統(tǒng)的 Dynamic Web Project需要手動(dòng)配 Tomcat 和依賴。版本這塊是血淚經(jīng)驗(yàn)的重災(zāi)區(qū)。SSM 項(xiàng)目里最容易出問(wèn)題的是三組版本JDK、Spring 和 MyBatis。JDK 建議用 8 或 11Spring 5.x 配 JDK 8 最穩(wěn)Spring 4.x 就別上 JDK 17 了反射和模塊化會(huì)直接讓你啟動(dòng)失敗。MyBatis 和 MyBatis-Spring 的版本要匹配比如 MyBatis 3.5.x 通常配 mybatis-spring 2.0.x。下面是一個(gè)典型的依賴版本組合你可以對(duì)照自己項(xiàng)目里的pom.xml檢查!-- pom.xml 關(guān)鍵依賴版本按項(xiàng)目實(shí)際情況調(diào)整 -- properties spring.version5.3.20/spring.version mybatis.version3.5.10/mybatis.version mybatis.spring.version2.0.7/mybatis.spring.version mysql.connector.version8.0.29/mysql.connector.version jdk.version1.8/jdk.version /properties這段配置里spring.version控制整個(gè) Spring 生態(tài)的版本SpringMVC 和 Spring JDBC 都跟著它走mybatis.spring.version是 MyBatis 和 Spring 的粘合層版本不匹配最常見(jiàn)的報(bào)錯(cuò)是NoClassDefFoundError或者 SqlSessionFactory 注入失敗。MySQL 驅(qū)動(dòng) 8.x 和 5.x 的差別也很大8.x 必須寫com.mysql.cj.jdbc.DriverURL 還要帶時(shí)區(qū)和 SSL 參數(shù)5.x 則是com.mysql.jdbc.Driver。這一步確認(rèn)清楚后面能省掉一半的排查時(shí)間。2.2 數(shù)據(jù)庫(kù)建表與初始數(shù)據(jù)導(dǎo)入零食商城的數(shù)據(jù)庫(kù)一般包含這幾張核心表用戶表user、商品表product、商品分類表category、購(gòu)物車表cart、訂單表orders、訂單明細(xì)表order_item。源碼里通常會(huì)帶一個(gè).sql文件直接導(dǎo)入即可。但導(dǎo)入之前要注意字符集零食商品名里經(jīng)常有中文和特殊符號(hào)字符集設(shè)錯(cuò)會(huì)出現(xiàn)亂碼。-- 建庫(kù)時(shí)指定字符集避免中文商品名亂碼 CREATE DATABASE snack_mall DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; -- 導(dǎo)入前先切庫(kù) USE snack_mall; -- 商品表核心字段示例注意價(jià)格用 DECIMAL 不用 FLOAT CREATE TABLE product ( id INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(100) NOT NULL COMMENT 商品名稱, category_id INT NOT NULL COMMENT 分類ID, price DECIMAL(10,2) NOT NULL COMMENT 單價(jià)保留兩位小數(shù), stock INT DEFAULT 0 COMMENT 庫(kù)存, image_url VARCHAR(255) COMMENT 主圖路徑, status TINYINT DEFAULT 1 COMMENT 1上架 0下架, create_time DATETIME DEFAULT CURRENT_TIMESTAMP ) ENGINEInnoDB DEFAULT CHARSETutf8mb4;這里有兩個(gè)參數(shù)值得說(shuō)清楚。價(jià)格字段用DECIMAL(10,2)而不是FLOAT是因?yàn)楦↑c(diǎn)數(shù)在金額計(jì)算上會(huì)出現(xiàn)精度丟失0.1 0.2 不等于 0.3 這種問(wèn)題在訂單結(jié)算時(shí)是致命的。status字段用TINYINT做邏輯刪除或上下架標(biāo)記比物理刪除安全得多用戶的歷史訂單里還能查到已下架商品的信息。導(dǎo)入完成后用SELECT COUNT(*) FROM product;確認(rèn)數(shù)據(jù)條數(shù)如果為 0 說(shuō)明導(dǎo)入腳本沒(méi)執(zhí)行成功檢查一下 SQL 文件里有沒(méi)有USE語(yǔ)句或者編碼問(wèn)題。2.3 IDEA 導(dǎo)入與 Tomcat 配置的完整步驟Maven 項(xiàng)目的導(dǎo)入相對(duì)標(biāo)準(zhǔn)IDEA 里選Open定位到pom.xml所在目錄等依賴下載完。如果依賴下載卡住檢查 Maven 的settings.xml有沒(méi)有配國(guó)內(nèi)鏡像。傳統(tǒng) Web 項(xiàng)目則要選Import Module然后手動(dòng)指定 Web 根目錄通常是web或WebContent再在Project Structure里把WEB-INF/lib下的 jar 加到模塊依賴。Tomcat 配置這一步新手最容易翻車的是 Artifact 沒(méi)配對(duì)。在Run/Debug Configurations里新建 Tomcat ServerDeployment標(biāo)簽頁(yè)添加 Artifact要選xxx:war exploded而不是xxx:war前者支持熱部署改 JSP 不用重啟。Application context建議設(shè)成/或/snack設(shè)成/snack的話訪問(wèn)路徑就是http://localhost:8080/snack/。# 啟動(dòng)前確認(rèn)端口沒(méi)被占用Tomcat 默認(rèn) 8080 # Linux/Mac lsof -i:8080 # Windows netstat -ano | findstr :8080如果 8080 被占用要么改 Tomcat 端口要么殺掉占用進(jìn)程。啟動(dòng)后控制臺(tái)沒(méi)有報(bào)錯(cuò)但頁(yè)面 404八成是Application context和你的訪問(wèn)路徑對(duì)不上或者web.xml里DispatcherServlet的url-pattern配成了/之外的路徑??吹紺lassNotFoundException就先檢查依賴有沒(méi)有真正打進(jìn)WEB-INF/lib或 Maven 的target目錄。啟動(dòng)成功、首頁(yè)能打開、數(shù)據(jù)庫(kù)能查到商品列表這三步都過(guò)了才算真正跑通。3. SSM 分層結(jié)構(gòu)拆解Controller、Service、Mapper 各管什么3.1 一次商品列表請(qǐng)求的完整調(diào)用鏈理解 SSM 分層最好的方式不是背概念而是跟著一次請(qǐng)求走一遍。用戶在瀏覽器訪問(wèn)/product/list請(qǐng)求先到web.xml里配置的DispatcherServlet它根據(jù)spring-mvc.xml里的組件掃描和注解找到ProductController中標(biāo)注了RequestMapping(/product/list)的方法。Controller 不直接查數(shù)據(jù)庫(kù)而是調(diào)用ProductService接口的getProductList()方法。Service 層做業(yè)務(wù)判斷——比如過(guò)濾掉已下架商品、計(jì)算分頁(yè)參數(shù)——然后調(diào)用ProductMapper接口。Mapper 是 MyBatis 的代理接口它對(duì)應(yīng)一個(gè) XML 文件里面寫著真正的 SQL。SQL 執(zhí)行結(jié)果通過(guò) MyBatis 映射成Product實(shí)體對(duì)象一路返回給 ControllerController 把數(shù)據(jù)塞進(jìn)Model最后DispatcherServlet轉(zhuǎn)發(fā)到product_list.jsp渲染。這條鏈路里每一層只干自己的事Controller 管請(qǐng)求參數(shù)和視圖跳轉(zhuǎn)Service 管業(yè)務(wù)邏輯和事務(wù)Mapper 管 SQL 和數(shù)據(jù)映射。分層的好處是改 SQL 不用動(dòng)業(yè)務(wù)代碼改業(yè)務(wù)規(guī)則不用動(dòng) Controller。壞處是新手容易把邏輯寫錯(cuò)層——比如在 Controller 里直接調(diào) Mapper或者在 Service 里寫HttpServletRequest這兩種都會(huì)讓代碼變得難以維護(hù)和測(cè)試。3.2 配置文件三件套web.xml、spring-mvc.xml、applicationContext.xmlSSM 項(xiàng)目的配置分散在三個(gè)文件里各管一攤。web.xml是 Web 應(yīng)用的入口負(fù)責(zé)注冊(cè)DispatcherServlet、ContextLoaderListener和字符編碼過(guò)濾器。spring-mvc.xml管 Web 層配置組件掃描只掃 Controller、視圖解析器、靜態(tài)資源放行。applicationContext.xml管 Service 和 Dao 層配置數(shù)據(jù)源、SqlSessionFactory、事務(wù)管理器、組件掃描掃 Service。!-- web.xml 關(guān)鍵片段注冊(cè) Spring 上下文和 MVC 分發(fā)器 -- context-param param-namecontextConfigLocation/param-name param-valueclasspath:applicationContext.xml/param-value /context-param listener listener-classorg.springframework.web.context.ContextLoaderListener/listener-class /listener servlet servlet-namedispatcher/servlet-name servlet-classorg.springframework.web.servlet.DispatcherServlet/servlet-class init-param param-namecontextConfigLocation/param-name param-valueclasspath:spring-mvc.xml/param-value /init-param load-on-startup1/load-on-startup /servlet servlet-mapping servlet-namedispatcher/servlet-name url-pattern//url-pattern /servlet-mappingContextLoaderListener加載的是父容器applicationContext.xmlDispatcherServlet加載的是子容器spring-mvc.xml。子容器能訪問(wèn)父容器的 Bean反過(guò)來(lái)不行。所以 Service 能被 Controller 注入但 Controller 不能被 Service 注入。如果你在 Service 里用Autowired注入了一個(gè) Controller啟動(dòng)就會(huì)報(bào)找不到 Bean。url-pattern配/表示攔截所有請(qǐng)求靜態(tài)資源css、js、圖片需要在spring-mvc.xml里用mvc:resources或mvc:default-servlet-handler放行否則頁(yè)面樣式會(huì)全部丟失。3.3 MyBatis 映射文件與實(shí)體類的對(duì)應(yīng)關(guān)系MyBatis 的核心是「接口 XML」的映射模式。ProductMapper是一個(gè)接口方法名對(duì)應(yīng) XML 里的id參數(shù)類型對(duì)應(yīng)parameterType返回值對(duì)應(yīng)resultType或resultMap。零食商城里最典型的查詢是帶分類篩選和分頁(yè)的商品列表!-- ProductMapper.xml 分頁(yè)查詢商品配合 PageHelper 使用 -- select idselectByCategory resultMapBaseResultMap SELECT id, name, category_id, price, stock, image_url, status FROM product WHERE status 1 if testcategoryId ! null AND category_id #{categoryId} /if ORDER BY create_time DESC /selectresultMap比resultType多一層字段映射能力當(dāng)數(shù)據(jù)庫(kù)列名和實(shí)體屬性名不一致時(shí)比如category_id對(duì)categoryId要么開mapUnderscoreToCamelCase要么手寫resultMap。if標(biāo)簽是動(dòng)態(tài) SQL 的基礎(chǔ)test里的categoryId是接口方法的參數(shù)名多個(gè)參數(shù)要用Param注解指定名字否則 MyBatis 會(huì)按param1、param2來(lái)取很容易寫錯(cuò)。分頁(yè)如果用了 PageHelper 插件SQL 里不用寫LIMIT插件會(huì)在執(zhí)行前自動(dòng)拼接但要注意 PageHelper 只對(duì)緊跟其后的第一條查詢生效中間插了別的查詢就會(huì)失效。4. 零食商城核心業(yè)務(wù)實(shí)現(xiàn)購(gòu)物車、訂單與庫(kù)存扣減4.1 購(gòu)物車的數(shù)據(jù)結(jié)構(gòu)設(shè)計(jì)與增刪改查購(gòu)物車有兩種常見(jiàn)實(shí)現(xiàn)存 Session 和存數(shù)據(jù)庫(kù)。存 Session 簡(jiǎn)單但換設(shè)備就丟存數(shù)據(jù)庫(kù)能持久化但要多一張表。零食商城這類項(xiàng)目通常用數(shù)據(jù)庫(kù)方案表結(jié)構(gòu)大致是cart(id, user_id, product_id, quantity, create_time)用user_id product_id做唯一索引避免同一商品重復(fù)插入。// CartServiceImpl 添加購(gòu)物車的核心邏輯 Override public void addToCart(Integer userId, Integer productId, Integer quantity) { // 先查是否已在購(gòu)物車 Cart existing cartMapper.selectByUserAndProduct(userId, productId); if (existing ! null) { // 已存在則累加數(shù)量 existing.setQuantity(existing.getQuantity() quantity); cartMapper.updateQuantity(existing); } else { Cart cart new Cart(); cart.setUserId(userId); cart.setProductId(productId); cart.setQuantity(quantity); cartMapper.insert(cart); } }這段邏輯的關(guān)鍵在于「先查后寫」但嚴(yán)格來(lái)說(shuō)在高并發(fā)下會(huì)有競(jìng)態(tài)問(wèn)題——兩個(gè)請(qǐng)求同時(shí)查到不存在然后都執(zhí)行 insert唯一索引會(huì)攔下第二個(gè)并拋異常。零食商城這種場(chǎng)景并發(fā)不高用try-catch兜住DuplicateKeyException再轉(zhuǎn)成更新操作就夠了。如果要做嚴(yán)謹(jǐn)可以用INSERT ... ON DUPLICATE KEY UPDATE一條 SQL 搞定。數(shù)量字段要校驗(yàn)上限比如單商品最多 99 件防止用戶手輸一個(gè)超大數(shù)字把庫(kù)存邏輯搞崩。4.2 下單流程從購(gòu)物車到訂單表的事務(wù)處理下單是整個(gè)系統(tǒng)里最需要事務(wù)的地方。用戶點(diǎn)「結(jié)算」系統(tǒng)要做四件事生成訂單主記錄、把購(gòu)物車商品轉(zhuǎn)成訂單明細(xì)、扣減商品庫(kù)存、清空購(gòu)物車。這四步必須在一個(gè)事務(wù)里任何一步失敗都要回滾否則會(huì)出現(xiàn)「訂單生成了但庫(kù)存沒(méi)扣」或者「庫(kù)存扣了但購(gòu)物車沒(méi)清」的臟數(shù)據(jù)。// OrderServiceImpl 下單核心方法Transactional 保證原子性 Override Transactional(rollbackFor Exception.class) public Integer createOrder(Integer userId, ListInteger cartIds) { // 1. 查詢購(gòu)物車選中項(xiàng) ListCart cartList cartMapper.selectByIds(cartIds); if (cartList.isEmpty()) { throw new BusinessException(購(gòu)物車為空); } // 2. 生成訂單主記錄 Orders order new Orders(); order.setUserId(userId); order.setOrderNo(generateOrderNo()); order.setStatus(0); // 0待支付 orderMapper.insert(order); // 3. 轉(zhuǎn)訂單明細(xì)并扣庫(kù)存 for (Cart cart : cartList) { Product product productMapper.selectById(cart.getProductId()); if (product.getStock() cart.getQuantity()) { throw new BusinessException(庫(kù)存不足 product.getName()); } // 扣庫(kù)存用帶條件的 UPDATE 防止超賣 int affected productMapper.reduceStock(cart.getProductId(), cart.getQuantity()); if (affected 0) { throw new BusinessException(庫(kù)存扣減失敗); } OrderItem item new OrderItem(); item.setOrderId(order.getId()); item.setProductId(cart.getProductId()); item.setQuantity(cart.getQuantity()); item.setPrice(product.getPrice()); orderItemMapper.insert(item); } // 4. 清空已下單的購(gòu)物車項(xiàng) cartMapper.deleteByIds(cartIds); return order.getId(); }Transactional的rollbackFor Exception.class很關(guān)鍵默認(rèn) Spring 只對(duì)RuntimeException回滾如果拋的是受檢異常事務(wù)不會(huì)回滾這個(gè)坑很多人踩過(guò)??蹘?kù)存的 SQL 要寫成UPDATE product SET stock stock - #{qty} WHERE id #{id} AND stock #{qty}用affected 0判斷是否扣減成功這樣即使并發(fā)也不會(huì)把庫(kù)存扣成負(fù)數(shù)。訂單號(hào)生成不要用時(shí)間戳裸拼同一毫秒的并發(fā)會(huì)重復(fù)常見(jiàn)做法是時(shí)間戳 用戶 ID 后幾位 隨機(jī)數(shù)。4.3 庫(kù)存扣減的并發(fā)安全與超賣防范超賣是電商系統(tǒng)的經(jīng)典問(wèn)題。假設(shè)庫(kù)存只剩 1 件兩個(gè)用戶同時(shí)下單如果代碼是「先查庫(kù)存再扣減」兩個(gè)請(qǐng)求都查到庫(kù)存為 1都認(rèn)為可以下單最后庫(kù)存變成 -1。解決辦法有三種悲觀鎖SELECT ... FOR UPDATE、樂(lè)觀鎖版本號(hào)、條件更新WHERE stock qty。零食商城項(xiàng)目推薦用條件更新實(shí)現(xiàn)最簡(jiǎn)單性能也夠用。上面reduceStock的 SQL 就是這種方案把判斷和扣減合并成一條原子操作數(shù)據(jù)庫(kù)的行鎖會(huì)保證同一行的更新串行執(zhí)行。樂(lè)觀鎖適合更新沖突少的場(chǎng)景需要在表里加version字段每次更新帶上版本號(hào)比對(duì)。悲觀鎖FOR UPDATE會(huì)鎖行到事務(wù)結(jié)束并發(fā)高時(shí)容易造成鎖等待零食商城這種量級(jí)不太需要。注意庫(kù)存扣減和訂單創(chuàng)建必須在同一個(gè)事務(wù)里且扣庫(kù)存的 UPDATE 要放在訂單明細(xì)插入之前這樣庫(kù)存不足時(shí)能盡早拋異常減少無(wú)效的數(shù)據(jù)庫(kù)操作。還有一個(gè)容易被忽略的點(diǎn)取消訂單和超時(shí)未支付要回補(bǔ)庫(kù)存。很多源碼只做了扣減沒(méi)做回補(bǔ)用戶取消訂單后庫(kù)存就永久少了?;匮a(bǔ)邏輯要判斷訂單狀態(tài)只有「待支付」和「已取消」之間的轉(zhuǎn)換才回補(bǔ)已支付的訂單取消要走退款流程不能簡(jiǎn)單加庫(kù)存。5. 這份源碼最容易翻車的地方5 個(gè)高頻問(wèn)題排查5.1 啟動(dòng)報(bào) 404首頁(yè)和接口都訪問(wèn)不到現(xiàn)象Tomcat 啟動(dòng)無(wú)報(bào)錯(cuò)但訪問(wèn)任何路徑都是 404。原因通常是三種Application context配錯(cuò)、url-pattern不是/、或者 Artifact 沒(méi)部署。解決方法是先在 IDEA 的 Tomcat 配置里確認(rèn)Deployment有war explodedApplication context設(shè)成/然后檢查web.xml里DispatcherServlet的url-pattern。如果訪問(wèn)/能出首頁(yè)但/product/list404那就是 Controller 的RequestMapping路徑和訪問(wèn)路徑不一致或者組件掃描沒(méi)掃到 Controller 所在的包。5.2 數(shù)據(jù)庫(kù)連不上報(bào) Access denied 或 Unknown database現(xiàn)象啟動(dòng)時(shí)拋CannotGetJdbcConnectionException。原因一般是jdbc.properties里的用戶名密碼不對(duì)、數(shù)據(jù)庫(kù)名拼錯(cuò)、或者 MySQL 8 的驅(qū)動(dòng)類名和 URL 參數(shù)沒(méi)改。解決方法是先確認(rèn)數(shù)據(jù)庫(kù)真的建了、賬號(hào)能登錄然后檢查 URL 格式。MySQL 8 的 URL 要寫成jdbc:mysql://localhost:3306/snack_mall?useUnicodetruecharacterEncodingutf8serverTimezoneAsia/ShanghaiuseSSLfalse少了serverTimezone會(huì)報(bào)時(shí)區(qū)錯(cuò)誤少了useSSLfalse會(huì)有警告。驅(qū)動(dòng)類名必須是com.mysql.cj.jdbc.Driver。5.3 中文亂碼商品名和訂單備注全變問(wèn)號(hào)現(xiàn)象頁(yè)面顯示的中文變成???或亂碼。原因可能出在三個(gè)環(huán)節(jié)數(shù)據(jù)庫(kù)字符集、連接 URL 字符集、JSP 頁(yè)面編碼。解決方法是三層都設(shè)成 UTF-8。數(shù)據(jù)庫(kù)建庫(kù)時(shí)用utf8mb4連接 URL 加characterEncodingutf8JSP 頁(yè)面頭部加% page contentTypetext/html;charsetUTF-8 languagejava %同時(shí)在web.xml里配CharacterEncodingFilter強(qiáng)制請(qǐng)求和響應(yīng)都用 UTF-8。三個(gè)地方缺一個(gè)都可能亂碼排查時(shí)按「數(shù)據(jù)庫(kù) → 連接 → 頁(yè)面」的順序逐個(gè)確認(rèn)。5.4 MyBatis 報(bào) Invalid bound statementMapper 找不到現(xiàn)象調(diào)用 Mapper 方法時(shí)拋BindingException: Invalid bound statement (not found)。原因是接口和 XML 沒(méi)有正確關(guān)聯(lián)。檢查四點(diǎn)XML 的namespace是否等于 Mapper 接口的全限定名XML 文件是否放在resources下且目錄結(jié)構(gòu)和接口包名一致applicationContext.xml里mapperLocations配置的路徑能不能匹配到 XML方法名和 XML 里的id是否完全一致。Maven 項(xiàng)目還有一個(gè)坑X(jué)ML 放在src/main/java下默認(rèn)不會(huì)被打包需要在pom.xml的resources里配置包含**/*.xml。5.5 事務(wù)不生效庫(kù)存扣了訂單沒(méi)生成現(xiàn)象下單過(guò)程中拋異常但庫(kù)存已經(jīng)被扣減數(shù)據(jù)不一致。原因是Transactional沒(méi)生效。常見(jiàn)原因有四個(gè)方法不是public的同類內(nèi)部方法直接調(diào)用沒(méi)走代理異常類型不在回滾范圍內(nèi)Service 沒(méi)被 Spring 管理沒(méi)加Service或沒(méi)在掃描包內(nèi)。解決方法是確認(rèn)方法public、加rollbackFor Exception.class、從外部調(diào)用而不是this.xxx()、檢查組件掃描配置。如果用了多數(shù)據(jù)源還要確認(rèn)事務(wù)管理器綁定了正確的數(shù)據(jù)源。6. 從能跑到能講二次開發(fā)與答辯演示的實(shí)用技巧把項(xiàng)目跑起來(lái)只是第一步真正讓它產(chǎn)生價(jià)值的是你能改得動(dòng)、講得清。二次開發(fā)建議從「加一個(gè)功能」入手比如給商品加一個(gè)「收藏」功能涉及新建favorite表、寫 Mapper、Service、Controller 和 JSP完整走一遍分層流程比看十遍代碼都管用。改的時(shí)候注意別破壞原有事務(wù)邊界新功能如果涉及多表寫入記得加Transactional。答辯演示有個(gè)實(shí)用技巧提前準(zhǔn)備好數(shù)據(jù)別現(xiàn)場(chǎng)從空庫(kù)開始操作。商品列表至少準(zhǔn)備 20 條數(shù)據(jù)、覆蓋 3 個(gè)以上分類訂單表準(zhǔn)備幾條不同狀態(tài)的記錄待支付、已支付、已取消這樣演示篩選、分頁(yè)、狀態(tài)流轉(zhuǎn)時(shí)不會(huì)冷場(chǎng)。演示下單流程時(shí)可以提前把某個(gè)商品庫(kù)存改成 1現(xiàn)場(chǎng)演示「庫(kù)存不足」的提示這比只演示成功路徑更能體現(xiàn)你對(duì)邊界情況的理解。論文部分和源碼要對(duì)得上。常見(jiàn)問(wèn)題是論文里寫的技術(shù)棧和源碼實(shí)際用的不一致比如論文寫「使用 Redis 緩存商品信息」但代碼里根本沒(méi)有 Redis。答辯老師如果對(duì)著論文問(wèn)代碼答不上來(lái)就很尷尬。建議把論文里的每個(gè)技術(shù)點(diǎn)都在源碼里找到對(duì)應(yīng)位置找不到的就從論文里刪掉寧可少寫也不要寫虛的。最后說(shuō)一個(gè)我自己的習(xí)慣拿到任何一份 SSM 源碼先不改代碼而是把a(bǔ)pplicationContext.xml、spring-mvc.xml、web.xml三個(gè)文件從頭到尾讀一遍把每個(gè) Bean 的作用和依賴關(guān)系畫在紙上。這一步花半小時(shí)后面改代碼和排查問(wèn)題的效率能翻倍。SSM 的配置雖然繁瑣但它是理解整個(gè)項(xiàng)目結(jié)構(gòu)的鑰匙配置讀懂了代碼就是水到渠成的事。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
精品999日本| 超碰吊日色| 久久精品国产亚洲AV成人直播| 九九九九九九免费视频| 黄呦呦在线| 色五月综合| 亚洲成人福利电影免费| 懂色中文一区二区三区| 78m成人视线| 日韩中文字幕av在线播放| 无码自拍SM| a片自拍直播视频| 国产综合久| 伊人991| 色综合美国| 亚洲美女自拍偷拍视频| 日韩亚洲中文字幕在线| 色婷婷六月丁香七月婷婷| 中国和日本人色哪个不下载能放| 超碰到97情色| 国产夫妻性生活视频| 精品然女一区二区| 亚洲综合色在线| 曰韩欧美国产传媒麻豆第一区| 国产二区三区免费视频| 人人污日韩一区二区| 操逼日韩无码 | 国产精品日韩在线一区| 综合久久少妇中文字幕| 视频不卡中文字幕| 亚洲天堂中文字幕无码男同| 热天堂一区二区| 人人综合| 青青伊人久久| 好湿好紧视频| 蜜臀视频网站| 国产69精品久久久久99尤物| 人摸人人操人| 亚洲色图在线视频| 91天天爱| 黄色片大香蕉| 91狠| 亚洲午夜蜜臀| 亚洲视频中文一区| 欧美一级做a爰片免费视频| 综合自拍| 国产精品91ai| 91亚洲色图| 人妻丰满熟妇一区二区三| 国内毛片婷婷六月色| 日本片日本片祼观看网站在线看中文版网页在线看 | 久久久91福利姬| 天天夜夜rb| 麻豆国产精品午夜视频| 99热自拍| 亚洲成人av电影在线| 中日高清无码操逼视频| 亭亭在线资源| av一区二区三区不卡| 99久久久无码国产精品性男| 欧美日韩精品国产91| 大茄子熟女AV导航| www…国产操逼| 日本性交操一区二区不卡系列| 亚洲精品电影| 天天操天天射青青草| 精品一区二区三区最新| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 欧美劲爆视频一区二区| 老熟妇综合| 啊啊啊想要| 色综合尤物| 男人的天堂2000| 青娱乐福利99| 国产夜夜操| 国产自制av蜜乳| 久久久九97| www久久精品| 盗摄女人妻在线| 欧美色日本| 日韩簧片免费看| 日韩中文字幕熟妇人妻| 国产传媒午夜理伦精品| 精品国产一区二区三区在线播出| 91女人的网站| av无码av无码专区| 天天性射网| 激情五月天社区| 人妻丰满熟妇av无码区蜜桃| 91一起操| 91综合色噜噜| 日本淫穴在线| 久久乐| 少妇久久久| 亚洲色图加勒比| 夜夜操美女| 九九超碰综合网| 婷婷丁香六月天| 91最新综合| 欧美强奸乱能| 95精品在线| www九九热| 超碰人人妻| 蜜臀在线视频| 男人天堂站| 琪琪精品免费一区二区三区 | 色综合久久av| 久久久久久久九九九九| 熟女露脸激情自拍视频| 用力操死我| 中文字幕 国产 精品| 国产91福利小视频在线观看| 91视频综合在线| 偷拍 亚洲| 久久久久78| 2024人人操人人摸| 国产极品美女高潮无套在线观看| 91狠狠| 97视频免费在线| 九九九九一级| 久久夜夜夜| 嗯嗯嗯,草死我| 开心五月婷婷| 日本99视频| 国产成人www免费人成看片| 麻豆国产视频精品观看| 夜夜草天天| 97日韩欧美| 午夜经典| 亚洲国产成人精品女人久久久| 国产AV久久野战精品| 91超碰在线| 九九草| 国产精品操| 亚洲欲色| 欧美日韩大香蕉| 亚洲天堂资源网| 欧美激情亚洲| 最新制服中文第一页| 加勒比伊人综合| 国产乱码精品久久久久久| 亚洲综合一区二区| 色婷婷av在线观看| 色九九九九久| 成人精品电影| 中文幕97| 久久99干一本高清| 中文字幕在线高清男人的天堂| 明星性猛交ⅹxxx乱大交| 色香欲综合| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师黑人潮喷一 | 黄色AAAAAAAAAAA大片| 无码人妻精品一区二区三区99不卡| 友优传媒精品在线一区二区| 亚洲av青草久久一区二区| 97狠狠| 黄色无码高清黄色无码网站| 中文字幕第二页| 久久久久亚洲一区女同性恋中文字幕| 亚洲欧洲网站免费观看| 久久超碰com| 天天舔天天日天天射| 青青草玖玖爱| 国产精品视频播放| 韩国毛片一区二区三区| 欧美精品激情| 艳美熟妇先锋一二三区| 综合婷婷| 欧美97在线观看| 免费观看欧美日韩操逼视频| 97色97好| 蜜臀99久| 在线观看综合精品亚洲| 草久久久| 国产精品剧情| 亚洲少妇喷视频看| 啊啊啊好疼| 精品福利| 大香蕉97久久| 亚洲天堂中文字| 丁香五月婷婷色| 超碰538| 超碰在线第一页| 国产精品国产精品国产| 亚洲高清无码AAA久久久精品| 夜夜一区二区| 中文字幕在线观| 国产在线视视频有精品| 鸥美极品| 欧美久久伊人| 玖玖爱伊人玖玖爱| 欧亚性爱视频免费看| 久久精品72| 亚洲欧美首页| 三级三级三级日本99| 青娱乐亚洲自拍| 国产乱码久久| 青娱乐二区免费| 久久久com| 中文一区二区三区影院| 99欧美| 欧美性高潮| 九九99久久| 日本幼女18+| 国产激情久久久| 爱丝福利| 九九热免费国产视频婷婷伊人五月 | 97超色| 国产一区二区视频在线播放| 极品少妇久久久| 看日韩美女二区三区免费操逼视频 | 国产一线二线三线av| 天天日美女的B| 一区二区三区国产精产| 免费αV在线视频| 伊人久久国产免费观看视频| 中文字幕精品久久久久人妻红杏ⅰ| 麻豆久久精品亚洲精品88| 国产精品熟女AV中文字幕在线播放| 久久久久久久 九九九九九九九| 99热导航| 高树玛利亚无码流出| 亚洲欧美自拍偷拍| 91美女中出| 成人97人人超碰人人| 欧美色图片欧美色图| AV天天在线观看| 中文精品一区二去| 91大香蕉伊人| 欧美A√综合网| 99精品视频在线观看| 在线观看无码三级少妇| 一及黄久一点| 伊人网一本| 中文字幕丝袜人妻| 精品久操| 日韩欧美蜜桃精品久久中文字幕久久 | 狠狠爱综合| 日本淫乱女一区二区三区视频| 97超碰色中文字幕| 狠狠操狠狠燥| 日韩无限资源| 久操频道免费在线呗看| 伊人玖玖网| 日本超碰97日韩精品人妻| 爱欲AV| 欧美成不卡网| 天天舔天天日天天射| 18岁禁 茉莉成人久久| AV一二区| 啊啊啊啊在线播放| 久久人妻熟女一区二区| 99热在线不卡| 综合色图区| 亚洲综合春色| 97超碰久久色| 天天干人人乐| 9国产超碰| 国产第12页| 精品久久久久av影院| 99九九久久| 国产后入精品| 日本天天干天天日一区| 九九九九热| 欧美亚州手机在线| 亚洲欧美国产中文视频| 五月婷婷色| 中文字幕乱偷人妻久久艾草网| 刺激性视频黄页| 秋霞一区二区三区四区五区六区七区| 加勒比99999| 本道在线| 伊人久久在线视频观看| av中文在线| 99久久无色码| 亚洲人综合19| 亚洲精品人妻吞精av| 超碰人人干| 四虎 精品 WWW| 热G综合热G中文| 377p欧洲日本亚洲大胆| 蜜臀AV一区二区三区激情综合| 久久人妻无码毛片A片麻豆| 亚洲欧美另类激情小说| www.色操逼| 1区2区3区中文字幕日韩| 视频分类 国内精品| 啊嗯好大视频在线观看| 亚洲欧美综合网站| 亚洲国产无码精品首页久久久| 中文字幕精品资源在线| 大香蕉十区| 精品美女少妇一区二区| 亚洲色图欧美色18直播在线| 国产大学生口爆吞精合集| 亚洲综合在线高清| 综合伊人网12色| 综合啪啪| 婷婷8月天青娱乐| 亚洲国产成人高清在线| 亚洲九九爱| 99精品视频在线观看免费| 日韩一区二区熟女| 熟妇综合一区二区三区| 天天操女人| 极品肉射| 嫩草 人人网精品| 成全动漫视频观看免费下载| 亚洲蜜臀懂色| 吖在线不卡一区二区国产剧情| 九一亚洲国产免费| 少妇熟女1区2区3区| 亚州色图第三区| 精品一区二区三区麻豆| 五月婷婷六月激情| 欧美97色| 丰满少妇高潮无码| 播播亚洲小说亚洲| 色噜噜日韩精品| 久久亚洲AV成人精品无码| 嗯啊不要在线| 夜夜春夜夜操| 免费一级视频特黄色大片| 夜夜嗨一区| 91久久婷婷| 亚洲色电影在线| 欧美亚洲丝袜人妻制服99| 这里只有精品97| 欧美精品四区| 国产不良强奸视频免费看| 激情欧美日韩女同久久| 欧亚乱色熟女一区二区| 深夜国产福利| 午夜啊啊啊| 超碰国产精品久| 果冻传媒一区二区三区| 综合网,亚洲,欧美| 亚洲暴力强奸AV| 国产精品丝袜在线| 中文字幕精品乱码| 清柠毛片| 91小视频| 国产v亚洲v日韩v欧美v片另类| 亚洲AV高潮| 日本性爱不卡视频| 视频一区二区免费在线| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 亚洲加勒比色图| 五月丁香激情啪啪| 日韩美女啪啪一区| 午夜啊啊| 色阁阁AV综合网| 激情AV| 男女日B国产| 蜜桃传媒视频第一区入口在线看| www.操| 欧美久久伊人| A级国产欧美激情在线| 吊色| 四虎视频在线观看| 91啪啪视频| 欧美精品日韩久久久九 | 天天看,天天做| 我要去看2个日本美女.com曹逼| 日日夜夜模| 丝袜熟女2P| 国产自偷自拍一区| 蜜乳AV一区| 亚洲啪啪综合?v一区综合精品区| 日本 情色 1区2区3区| 久久精品亚洲婷婷| 五月丁香大香蕉| 久久成人国产| 精品久久久久久中文| 高清无码在线播放网站| 亚洲97成人在线观看| 无套后入双马尾| 青青草久草AV| 欧美大片天天看| 蜜臀在线免费观看在线免费观看| 98一区二区精品| 欧美 亚洲 偷拍自拍| 日本三级一区二区 在线| 亚洲天堂久久久久久粉红视频| 四虎av在线| 91美女视频。| 丝袜美腿91| 日韩欧美蜜桃精品久久中文字幕久久| 97精品第3页| 大香蕉综合| 天天干,夜夜爽| 五月综合视频| 操狠狠| 色五月激情网| 成人夜夜爽| 91在线色综合| 欧美久久草熟女| 日本久久久久久久久| 中文字幕精品资源在线| 91日本在线观看| 8050无码八戒| 2010男人的天堂| 欧美夜夜狠| 中文字幕日产av人| 亚州色国| 老熟妇一区二区三区| 大香蕉92| 亚洲欧美洲综合| 天美传媒婬乱在| 偷拍盗拍亚洲色图图片| 亚洲天堂久久久久久粉红视频| 97亚洲综合| 老熟女搡BBBB搡BBBB视频| 26uuu性| 92性色国产午夜福利在线661| 色操逼网| 亚洲精品成人激情在线| 亚洲综合色男人网| 超碰夫妻97| 亚洲欧美在线观看2021| 欧美激情色婷婷花野真衣一区二区| 中文字幕丝袜人妻| 久久精品国产久精国产| 精品欧美日韩在线观看| 大香蕉淫人| 欧美视频一| 嗯啊视频免费在线观看| 久久亚洲AV无码专区国产精品| 簧片免费看视频| 长长久久免费视频| av东京热男人的天堂| 久久久女人| 日韩中文字墓| 国产成人无码网站在线视频| 少妇同性| 91亚洲最新在线| 免费看片黄| 狠狠爱综合| 性欧美体内射精| 加勒比性爱成人在线| 78久久| 岛国片国产成人亚洲播放| 黄网色一区二区三区四区精品| 天美麻豆精品视频99| 桃色人妻在线视频| 久热一区二区| 色999五月色| 97色色国产视频| 亚洲综合嫩| 久久社区一区二区三区| 国产精品制服丝袜中文字幕日韩一区二区三区| 夜夜嗨免费视频| 国产精品亚洲色婷婷久久久| 成人精品视频| 亚洲人成网站7777| 天天爽天天操| 一二视频神马久久传媒| 精品人妻一区二区三区四区石在线| 国产风韵犹存熟妇三区| 亚洲色鬼| 小视频国产| 插穴性爱视频在线观看| 欧美高清18A片| 操碰91| 色偷偷超碰亚洲| 亚洲国产av中文字幕久久| 在线视频日韩欧美国产| 欧美少妇色综合| 欧美 精品国产制服第一页| 婷婷五月综合激情| 亚州,欧美在线| 99久久久er直播网址| 色网在线| 2019久久久久久久久福利| 欧插网站| 探花视频免费观看国产专区| 日韩97超碰中文字幕| 亚州,欧美在线| 国产97色在线| 国产精品成人午夜福利| 96精品在线| 999热这里只有精品| 中文一区二区| 黑人黄片在线免费观看| 国产熟码AV| 簧片免费看视频| 啊啊啊啊啊舒服| 精品黑人一区二区| 亚洲欧洲无码一区夜| 51一区二区三区| av麻豆啪啪| 日韩国产欧美伦理在线| 99久在线精品99re8| 把腿张开老子CAO烂你| 蜜桃丰满熟妇av无码区不卡| 人人操人人操草草| 91激情国产| 九九热超碰| 中国人高清www色视频免费| 久久熟女人| 国产精品不卡av免费在线观看| 人妻天天爽夜夜爽精品2| 人人操人人色人人摸| 亚洲AV无码久久精品蜜桃小说| 中文字幕精品免费一区二区| 日本黄色天堂| 极品五月天噜噜| 日韩福利综合一区| 嫩草黄页| 青青国产精品在线| 日韩高清黄片| 国产精选视频| 亚洲诱惑| 激情综合五月婷婷| 亚洲精品一区二区精品| 毛片麻豆91糖心精品毛情片| 2020视频1区2区3区| 麻豆av一区二区| 国产亚洲一黄| 亚洲av综合色| 97香蕉网| 亚州黄站| 精品人妻视频一区二区三区蜜桃视频| 最新国产亚洲精品精品国产亚洲综合 | 97色色网| 精品国产91av一区二区三区| 一本久道久久综合狠狠爱一密臀精| 久久九九网| 自拍偷拍 日韩欧美| 天天在线91| 丰满人妻一区二区三区在线| 99热只有这里有精品| 大香蕉一级黄色片久久| 天天舔日美女视频| 国产AV天美| 色综合五月天| 在线观看日韩av不卡| 亚洲中文字幕在线视频一区二区| 亚洲成人AB| 美腿丝袜高跟网免费视频免费视频| 超碰在线成人| 日本高清有码网址视频| 欧美不卡在线一区二区| 欧美色图20p| 美女上床网站| 青青草中日韩在线| 人妻酒店出差被中出免费在线播放| 亚洲婷婷五月天| 国产久久成人| 亚洲图片激情综合另类| 欧美精品精品一区二区| 天天综合网~91| 怡红院久久老司机| 大香蕉2017| 超碰这里有精品| 免费看污网址| 久久久久78| 91天天综合网,天天综合网| 天美AV片| 99中出在线| 人妻嗯啊啊在线播放| 久久婷婷亚洲| 日韩性爱高清免费视频| 高跟丝袜AV专区国产| 97人妻免费中文字幕| AV天堂国产| 最新国内自拍av免费| 欧洲性爱无码区| 无码久久国产| 一本色道久久天天射天天干| 日韩黄片影院| 中文一区二区三区影院| 婷婷久草| www.yw尤物| 熟妇激情| 久热精品在线| 在线视频资源| 久操视频在线观看| 国产又粗又大硬免费色网视频| 欧美色图 色综合图| 蜜臀99精品国产高清在线观看| 色97欧美| 国产日韩久久| 天天综合网日韩| www.操| 宅男91视频在线播放| 色婷婷综合久久久久中文一区二区| caopeng97| 男生女生啊啊啊啊| 加勒比伊人综合| 中文字幕一区二区三区蜜桃视频| 香港久久久| 久久人妻| 手机午夜电影神马久久| 黄色AAAAAAAAAAA大片| 日韩成人大片一区二区| 25国产精品免费观看| 青青草视频久久久久| 国产熟女精品区| 欧美肥臀在线| 人妻二区| 大香蕉丝袜一级片| 日韩中文字幕熟妇人妻 | 91逼逼女人91| 在线五区| 女人天堂av在线播放| 天天操天天射天天日| 96久久精品一二三区色欲| 亚洲 日本 一 二 三| 亚洲人在线| 精品久久久一本一道| 亚洲中文字幕在线视频一区二区| 综合 欧美 亚洲 日本| 丁香五月自拍| 97精品国产精品免费观看| 91美女视频直播| 成人av性爱电影在线观看| 国产精品香蕉热久久新品| 人妻人人操| 四虎884a| 天天操福利视频综合网站| 强奸乱伦AV一天堂网| 中日亚韩免费视频| 久久9 9 9精品| 日本熟妇自慰性高潮一区二区三区| 翔田千里AV无码秘 三区| 国产操伦| 亚洲欲色| 另类图片综合| 中国一级特黄大片护士| 蜜臀av一区二区三区免费观看| 色娱乐色呦呦夜夜夜夜av| juliaann欧美丝袜办公室| 欧美激情性久久久久久| 天天欧美色| 肉丝中文无码高清| 日日夜夜精品| 99久久综合| 人妻少妇久久中文字幕一区二区 麻豆 | 久日91在线| 美女天天干| 蜜桃久久一区二区三区| 午夜操一视频一区| 九9精品| 一本色道综合久久欧美| 国产精品96久久久久久| 精品一久久久| 大香蕉中文201| 亚州熟女乱伦| 蜜桃久久综合视频| 亚洲自拍97| 超碰人人干| 99久久久| 99热精品在线观看| 国产熟女无套内射| 五月天婷婷综合网| 精品人妻av区天天看片| 亚洲天堂电影精品一区| 精品人妻一区二区三区日产| 蜜臀久久一区二区| 日本孕妇一区二区视频操逼免费看 | 天天澡天天爽日日AV| 日韩天美| www.亚洲成人一区| 成人五月天色网| 国产精品极品美女视频| 97超碰中文字幕| www久久99| 搡老女人老熟女91老熟女综合网| 色综合美国| TS人妖另类精品视频系列 | 亚洲精品欧洲色| 任我爽视频在线观看| 久久精品性| 一级@啪啪视频| 中文字幕永久在线| 青青草久久| 大香蕉啪啪啪| 福利视频网站| 亚州日韩97| 亚洲砖码砖专无区2023| 成人小电影网站tex| 2001天天操| 伊人久久综合影院| 日日躁天天躁狠狠躁| 久久熟女人| 男女性感激情网站| 凌辱美少妇久久aV| 校园春色综合色| 亚洲一本大道中文字幕无码在线| 96精品久久| 91 综合 色| 色99在线| 91动漫操逼视频| 麻豆av一区二区| 殴洲老熟女| 色婷婷99| 亚洲精品天堂久久A∨51成人漫| 欧美人妻一区二区| 闷骚老熟女15P| 国产福利av精彩对白| 私人尤物在线精品不卡| 国产和美国毛片| 炮色五月| 亚洲 自拍偷拍 欧美| 日本色日夜干| 无码视频一区二区| 成人免费福利网站国产| 亚洲综合第一页| 熟女熟妇伦久久影院毛片一区二区 | 蜜臀久久99精品久久久久久-DVD| 樱花草社区www中国| 亚洲欧洲偷拍一区| 欧美国产伊人久久久久| 日韩av免费一级电影| 精品一二三区女同| 丝袜AV一二三区| 亚洲国产精品成人无码久久久| 97免费在线| 久久精品国产99久久,亚洲日韩久久日本一区一区三区 | 人人看人人插| 日本女人久久久| 亚洲色图欧美色图制服诱惑| 青青草日本无码| 新版天堂中文资源8在线| 最新av中文字幕高清| 欧美色网络| 呻吟 欧美 日本 中出| 成人久久无码www| 超踫中文字幕| 一区在线观看中文字幕| 欧美精品一区二区少妇免费A片| 91美女小视频| 亚洲久草AV色图| 熟妇国产免费一区| 操学生天天| 九九久久首页| 大奶啊啊好爽 | 999日韩中文精品观看视频。| 天天色综亚洲91污| 69久久久久久久久久久久久| 国产肏逼网站| 99只有精品| 日产中文字幕2020| av大香蕉网站| av婷婷色网| 男人的天堂在线有码| 大香蕉五月天| 2024人人操人人摸| 亚洲超碰在线| 亚洲操人| 婷婷激情五月| 福利伊人玖玖国产| 无码av永久免费专区网站| 伊人久久大香线蕉无码| 中国大陆国产高清AⅤ毛片| 日欧亚洲二三区大片不卡| 午夜无遮挡男女啪啪视频| 成人乱人伦一区二区| 亚洲无码视频免费在线观看网址!| 国产无码精品无码| 手机在线大香蕉| 久久久新亚洲AV| 色97干| 国产传媒av天美传媒在线| 国产精品乱码久久| 色色毛片| 天堂俺去俺来也www久久婷婷| 一本精品日本在线视频精品| 日韩无码三级影院| 日韩丝袜二区| 男人夜色天堂ss| 亚洲 图片 欧美 色图| 久草男人天堂| 97精品视频在线| 人人摸人人舔一区二区| 亚洲成人色情五月天丁香花| 久久成人午夜狠狠| 国内毛片四区| 婷婷丁香人妻 | 97人人爱人人做人人乐| 中国小夫妻勾搭露脸淫荡对白 | 人妻熟女一区二区三区视频| 国产三级片在线观看| 国产免费黄色一级大片| www.av在线视频| 97精品综合久久| 亚洲欧美天堂在线| 午夜无码熟妇丰满人妻| 97视频播放| www.亚洲黄色| 激情婷婷综合久久| 翔田千里无码中出中文字幕| 久久久麻豆精品| AV电影在线播放| 精品亚洲国产成人精品| 情色五月天就去干| 欧美色吧综合| 婷婷九月丁香| 国产h片在线观看视频| 私人尤物在线精品不卡| 欧美极品性爱天天射| 久热九九| 91精品国久久久久久无码| 日日摸日日弄日日拍| 亚洲成人激情小说视频| 午夜理论片在线观看免费| 大香蕉综合| 青青操少妇| 超碰97丝袜| 久久久无码av精| 色综合一区二区三区| 亚洲国产欧美另类自拍| 青娱乐 成人娱乐在线| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 国产精品自拍欧美在线| 欧美激情亚洲色图| 亚洲熟女av中文字幕| 乱欲一区二区| 蜜桃色院一区久久| 91亚洲网| 色婷婷av在线观看| 日本精品久久久久久久| 性色AV网站| 99热亚洲| 日韩欧美久久婷婷网站| 黄色无码高清黄色无码网站| 久久精品美女一区| 黄色一区三区| 欧美精品一区二区少妇免费A片 | 亚洲欧美日韩偷拍色图| 久久久国产成人一区二区三区在线| 精品久久一区二区三区四区五区| 国内成人圈中文字幕无码视频| 午夜精品久久99蜜桃的功能章节| 国产一区二区三区精品观看啪| 久久6热精品99视频| 日韩黄色片子| 国产超碰在线一区| 欲香欲色| 骚乳在线| 亚洲欧美日韩中文播放| 日韩AV一区二区三区四四| 亚洲情色在线| 91精品国产91久久青草| 免费一级视频特黄色大片| 久久手机好看网站| 97欧美日韩| 涩五月婷婷| 国产精选视频| 久久激情视频| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 视频黄站| 成年人一级黄色毛片大全在线观看| 60秒免费小视频| 素人一区二区三区日韩| 久操高青| 成人精品在线免费视频| 台湾大香蕉99热| 欧美爱三级日韩久久| 日韩/97| 国产精品日韩在线一区| 色五月第四色| 淫荡熟女乱伦网| 天天综合网~91入口| 一级特级aaaa毛片免费观看| 蜜桃臀一区二区aV| 男人天堂2019亚洲| 久久只有精品| 97看操| h无码动漫在线观看| 欧美色图在线视频少妇| 俺去啦自拍| 这里都是精品| 亚洲性猛| 五月天久久久| 久久久久久久综合,国产| 欧美日韩国内不卡| 国产又粗又长又大的视频| 欧美1727免费观看视频| WWW操逼| 99久久9| 五月天激情网图片| 蜜臀AV一区二区三区| 91丨豆花丨熟女| 97免费视频在线| 国产精品久久久久久久电影渣男| aaaa少妇高潮大片| baisiav| 懂色av中文字幕一区二区三区天美 | 啊啊啊啊免费视频| 亚洲色图尤物视频| julia ann久久| 狠狠欧美| 天天看,天天做| 国产强奸乱伦无码视频| 97精品国产精品免费观看| 国产日韩欧美亚洲精品95 | 校园春色亚洲欧洲| 偷看洗澡一二三区美女| 久久久九九九| 四虎在线免费视频| 精品人妻一区二区三区-国产精品 一个人在线看的黄色电影网站 | 日韩亚洲Av人人夜夜澡人人爽| 97伊人网| 人人操人人精品影片| 中文有码第五页| 亚欧性爱在线无码| 久久久精品中文字幕爱豆| 日韩欧美~中文字| 97精品97| 男人的天堂成人的社区| 男人兔费天堂| 亚洲综合精品国产一区| 搡老熟女免费视频 | 猛交交| 玖玖爱免费观看视频| 久久大香蕉97| 大乔未久88一区| 99国产精品久久久久久久成人热| 色婷婷小说| 国产大学生口爆吞精合集| 99精品网| 一牛影视成人片免费| 青青操在线视频| 九月婷婷综合| 亚洲黄色a级片| 免费啪啪av| 欧美精品精品一区二区| 国产熟女无套内射| 91激情网| 亚洲AV不卡在线观看尤物| 蜜桃中文字日产乱幕4区| 五月丁香综合网| 牛黄色久午久| 日韩免费看黄片| 婷婷五月天激情网| AV网站高清无码在线观看| 岛国1区2区3区在线观看| 97爱亚洲| 91性情| 欧美一区二区三区成人性生活| 精品九九九九九九九九九| 97硬碰| 国产精品午夜成人福利| 国产自产91区13区| 国产天美欧美| 日韩AV一区二区三区三州三州| 97久久资源| 亚洲欧美大| 一道本久久棕合爱| 综合熟女| 日韩三级网址| 伊人色综合超碰| 伊人久久国产免费观看视频| 黑丝少妇麻豆| 亚洲综合色男人网| 国产美脚女优尤物在线观看| 亚州操操穴网| 熟妇亚洲一区二区三区| 亚洲成人av色网| 久操热线| 欧美少妇熟女| 嗯嗯嗯啊啊啊操的我好爽| 亚洲s在线观看| 天天超级碰碰碰| 色九九九九| 91AV天美在线视频| 一本大道青青| 欧美亚洲91| 亚洲h片在线免费观看| 熟女乱伦A| 亚洲砖码砖专无区2023| 99re视频在线观看这里只有精品| 色噜噜狠狠色综无码久久合欧美| 亚洲国产综合久久天堂| 久久綜合很很很| 操91| 91九九| 搡老女人老熟女91| 国产精品视频麻豆入口| 极品色www影院| 天天射,天天操,天天爽-国内精品一区二区三区-成人AV | 亚洲欧美日韩夜夜| 久久五月份| 操91| 东京热一区二区中文字幕| 91东京热男人的天堂| ?亚洲伊人伊成久久人综合网| 婷婷伊人| 久久久∴| 国产精品白丝| 免费簧片在线观看| 99999久久久久9国产精品| 无码九九| 婷婷婷婷婷婷久久久久| 亚洲一区二区精品福利| 伊人激情| 成人精品一区二区三区| 白丝AV| 1禁看欧美黄片免费看| 91久久久久久久久久久| 天天看人人操屄犊摸阴| 四虎免费视频| 无码一区二区精品视频久久久春药 | 91社区拍啪人妻| 懂色AV一区二区三区| 国产精品电| 四虎午夜影院| 超碰av在线| 国模91| 日韩免费高清大片在线| 色婷婷99| 天堂资源站| 亚洲三级。日韩三级| 中文字幕一区二区韩| 精品夜夜澡人妻无码| 少好三P| 国产精品麻豆视频网站| 亚洲男人天堂网久久| 日韩精品亚洲一二三| 一本色道久久天天射天天干| 日韩中字av一区| 欧美 色 亚洲| 亚洲黄色a级片| 亚洲熟女偷拍在线观看| 日本东京热久久久电影| 色五月婷婷久久| 91视频观看网站| 蜜臀AV午夜精品久| 五月丁香成人网| 亚洲在线综合| 成人网站 免费观看| 少妇丝袜在线观看AV| 韩国手机不卡无码三级视频| 少妇 综合| 夜夜嗨视频| 五月综合久久| 亚洲清纯综合| A久久| ..日韩av毛片精品久久久| 久久夜色一区二区| 亚洲无码com| 少妇无码太爽| 综合久久久久久久久91| 天天做天天爱天天爽AV| 欧洲在线性爱视频| 伊人久久国产免费观看视频| 一个人免费视频观看在线WWW| 久久久九97| a片自拍直播视频| 97精品久久久久久久| 亚洲āv网址在线观看| 玖玖爱一区在线| 久久五月天婷婷丁香中文字幕| 天色综合网| 亚洲国产精品9999在线观看| 亚洲精品国产精品乱码不卡| 欧美18老人禁| 丰满精品人妻少妇久久字幕| 人妻一区二区三区视频| 久久超碰免费的| 久久美女国产| 欧美精品,四区。五区| 日本韩欧美在线播放a| 国产精品农村妇女| 日本三级中国三级99人妇网站| 欧美 亚洲| 日夜久久久九九九久| 欧美综合娱乐久久| 久久网亚洲| 91人妻爽爽人人做人人澡| 亚洲综合影院| 60秒试看最爽10分钟网站| 人人人人插| 伊人97| 一区二区久久天天干狠狠| 高清国产成人无码| 久久9精品网站| 日本三级中国三级99人妇网站| 中文操逼字幕| 亚州欧美总和| 欧美久热| 免费一级性爱久久| 蜜桃臀AV在线| 翘臀vidoes| 国产精品久久久久中文字幕| 9久久久久久| 丁香五月激情啪啪| 碰碰97| 中出后入| 美女诱惑爱爱| 欧美亚洲图片| 久久精品亚洲婷婷| 久久久久久国产手机AV| 午夜精品久久久久久久久久久久久| 久久伊人大香蕉| 色欲Av人妻精品一区二| a啊啊啊啊啊啊啊啊一区二区| 久久国产99精品72福利 | 亚洲操逼视频网站| 北京专精特新企业招聘信息| 男人的亚洲天堂| 国产亚洲精品一区二区三区| 午夜福利在线合集| 欧美v亚洲v日韩v最新在线二区 | www激情| 秋霞成人做爱| 九九九九精| 后入人妻一区| 国模精品一区二区三区苹果色戒| 亚洲综合影院| 亚洲色香| 九九热九九热| 成年人一级黄色毛片大全在线观看| 亚洲av性爱电影| 春色综合免费| 欧美久久草熟女| 日韩去日本高清在| 精品一区二区国产日韩| 亚洲视频精选| 粉嫩久久久极品| 超碰午夜在线| 欧美久久草熟女| 午夜男女爽爽爽在线视频| 亚洲av综合伊人久久| 久久久久久性爱免费视频| 欧美久久毛片基地| 开心五月天激情网| 一级A啪啪啪啪| 色色色天美视频| 国产毛片片精品天天看视频| 9Ⅰ超碰| 天天干人人乐| 天天干天天操天天拍| 五月天婷婷久久| 粉嫩绯色AV一区二区在线| 91久久久久久久久18| 香蕉国产97| 丰满少妇精品一区二区| 国产AV线| 激情啪啪视频| 久久久久久久六六 | 婷婷干黄色| 久久精品 六十路 熟女 欧美| 丝袜色综合| 亚洲激情天堂网| 日本韩欧美在线播放a| 高潮的A片激情扒开一区| 日本三级A片网站com| 无码外流操逼视频| 天美麻豆一区二区三区| 欧美日韩妖精91com| 亚洲中文字幕久久无码精品| 欧美超碰人妻97| a片亚洲一本通视频| 97精品熟女少妇一区| 伊人黄色视频免费观看| 亚洲天天操| 亚洲成成熟女人综合一区二区|