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

ARTICLE DETAIL

資訊詳情

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

Spring Boot+Vue+MinIO實(shí)現(xiàn)大學(xué)生招聘系統(tǒng):設(shè)計(jì)、源碼與部署

Spring Boot+Vue+MinIO實(shí)現(xiàn)大學(xué)生招聘系統(tǒng):設(shè)計(jì)、源碼與部署 最近不少同學(xué)在找基于 Spring Boot 的畢業(yè)設(shè)計(jì)或者課程設(shè)計(jì)項(xiàng)目要求很一致源碼完整、能跑起來、功能不能太敷衍。我手里這套“大學(xué)生招聘系統(tǒng)”網(wǎng)上流傳的 32850 版本正好是這類項(xiàng)目里的一個(gè)典型。它不像那些只有登錄注冊(cè)和增刪改查的花架子從學(xué)生、企業(yè)到管理員三條用戶線的核心業(yè)務(wù)都閉環(huán)了技術(shù)棧也踩得很穩(wěn)Spring Boot 搭后端Vue 搭前端MySQL 存數(shù)據(jù)另外還整合了 JWT 認(rèn)證和 MinIO 文件存儲(chǔ)。這篇文章我就把它從設(shè)計(jì)到實(shí)現(xiàn)的思路、關(guān)鍵源碼以及我實(shí)際搭建過程中踩過的坑全盤拆給你。這套系統(tǒng)的域名和用途很明確面向高校場景下的招聘平臺(tái)。你可以把它當(dāng)成一個(gè)簡化版的“校招內(nèi)推網(wǎng)站”學(xué)生在前臺(tái)搜職位、傳簡歷、投遞、收面試邀請(qǐng)企業(yè)注冊(cè)后可以發(fā)布崗位、篩選簡歷、安排面試管理員在后臺(tái)做用戶和職位的審核以及看運(yùn)營數(shù)據(jù)。它解決了傳統(tǒng)線下校招信息不對(duì)稱、簡歷管理混亂、面試安排靠人工催的問題對(duì)學(xué)習(xí)者來說它是一個(gè)能完整串聯(lián)前后端、權(quán)限、消息流和文件存儲(chǔ)的絕佳練手項(xiàng)目。下面我按自己實(shí)際拆分這套源碼的順序一步步把內(nèi)容講透。1. 整體設(shè)計(jì)思路為什么這套系統(tǒng)能直接用于答辯和項(xiàng)目展示拿到一套源碼第一件事不是急著點(diǎn)運(yùn)行而是先把它的功能邊界和使用場景摸清楚。這套系統(tǒng)的核心場景是“校招”圍繞“學(xué)生找工作、企業(yè)招人”這一對(duì)供需關(guān)系展開并加入管理員作為平臺(tái)運(yùn)營方。這種三角色模型是招聘系統(tǒng)最經(jīng)典的結(jié)構(gòu)也是面試官最容易認(rèn)可的業(yè)務(wù)閉環(huán)。1.1 功能模塊到底有哪些從用戶端劃分系統(tǒng)大概可以拆成三個(gè)端加一個(gè)公共模塊。學(xué)生端C 端功能偏“投遞”注冊(cè)登錄、個(gè)人中心、簡歷管理基礎(chǔ)信息、教育經(jīng)歷、項(xiàng)目經(jīng)歷、技能標(biāo)簽、職位瀏覽、按關(guān)鍵詞和分類搜索職位、投遞簡歷、查看投遞狀態(tài)投遞中、已被查看、已發(fā)面試、不合適、收到企業(yè)面試邀請(qǐng)后在系統(tǒng)里確認(rèn)并查看面試安排。企業(yè)端B 端功能偏“篩選”注冊(cè)后提交營業(yè)執(zhí)照等資質(zhì)材料、登錄發(fā)布崗位、管理已發(fā)布崗位上下架、修改、查看投遞了本企業(yè)職位的學(xué)生列表、查看學(xué)生簡歷詳情、對(duì)簡歷進(jìn)行篩選操作通過/淘汰、向通過篩選的學(xué)生發(fā)送面試邀請(qǐng)。管理員端P 端功能偏“治理”對(duì)企業(yè)注冊(cè)進(jìn)行資質(zhì)審核、對(duì)職位進(jìn)行審核和違規(guī)下架、管理學(xué)生賬號(hào)禁用/解禁、查看平臺(tái)核心數(shù)據(jù)崗位總數(shù)、投遞量、注冊(cè)用戶量、熱門職位排行。公共模塊則包括人機(jī)驗(yàn)證、修改密碼、會(huì)話保持、操作日志等。這些功能共同構(gòu)成了一個(gè)可演示的完整閉環(huán)學(xué)生注冊(cè)→投遞→企業(yè)篩選→面試邀請(qǐng)→學(xué)生確認(rèn)面試。1.2 三條用戶線的權(quán)限邊界我在看這套代碼時(shí)最先關(guān)注的是它的權(quán)限是怎么做的。很多課設(shè)項(xiàng)目把權(quán)限寫在頁面上比如“不是管理員就不顯示按鈕”但真正的做法是要在接口層做控制。這套系統(tǒng)的做法是在后端用 Spring Security 攔截所有請(qǐng)求通過角色標(biāo)識(shí)判斷當(dāng)前登錄用戶是ROLE_STUDENT、ROLE_COMPANY還是ROLE_ADMIN然后在接口上通過PreAuthorize(hasRole(ADMIN))之類的注解做細(xì)粒度控制。比如學(xué)生能訪問/api/job/list但訪問不了/api/company/apply/list管理員能訪問/api/admin/statistics但普通學(xué)生訪問會(huì)返回 403。這種設(shè)計(jì)不僅保證了數(shù)據(jù)安全也讓代碼結(jié)構(gòu)更清晰。實(shí)際使用中業(yè)務(wù)層還要再校驗(yàn)一次數(shù)據(jù)歸屬比如企業(yè)只能操作自己創(chuàng)建的職位這個(gè)邏輯不能只依賴前端傳參。1.3 數(shù)據(jù)庫表設(shè)計(jì)的核心邏輯這套項(xiàng)目的數(shù)據(jù)庫一共十幾張表核心表我用一個(gè)表格列出來你就明白數(shù)據(jù)是怎么流轉(zhuǎn)的表名主要字段作用userid, username, password, role, phone, status統(tǒng)一用戶表用 role 區(qū)分學(xué)生/企業(yè)/管理員resumeid, user_id, name, school, major, education, skills學(xué)生簡歷一對(duì)一掛在用戶下companyid, user_id, company_name, license_url, audit_status企業(yè)資質(zhì)信息注冊(cè)時(shí)填寫待審核job_postid, company_id, title, category, city, salary_min, salary_max, description, status職位表包含薪資區(qū)間、城市、上下架狀態(tài)job_applicationid, job_id, resume_id, student_id, company_id, status, create_time投遞記錄狀態(tài)隨時(shí)間流轉(zhuǎn)interviewid, application_id, company_id, student_id, time, location, remark面試邀請(qǐng)關(guān)聯(lián)到具體的投遞記錄這種設(shè)計(jì)的巧妙之處在于用一個(gè)user表撐起了三種角色再用角色前置的輔助表存各自的擴(kuò)展信息。企業(yè)注冊(cè)后生成company記錄并處于待審核狀態(tài)學(xué)生注冊(cè)后自動(dòng)創(chuàng)建一個(gè)空resume這樣可以避免后面業(yè)務(wù)邏輯里各種查不到記錄的空指針問題屬于比較成熟的項(xiàng)目組織方式。2. 技術(shù)選型的門道Spring Boot Vue MinIO 這樣組合的理由這套源碼使用的技術(shù)組合很常見但每一個(gè)選型背后都有明確的理由我實(shí)際踩過一遍后對(duì)這些取舍更清楚了。2.1 后端Spring Boot 的自動(dòng)裝配和生態(tài)優(yōu)勢Spring Boot 能讓項(xiàng)目“開箱即用”核心是它的自動(dòng)配置機(jī)制。比如你在pom.xml里引入了spring-boot-starter-webBoot 會(huì)自動(dòng)檢查是否存在WebMvcConfigurationSupport、Servlet等類然后自動(dòng)創(chuàng)建需要的 Bean。這就是我在項(xiàng)目啟動(dòng)時(shí)幾乎不需要手動(dòng)寫DispatcherServlet配置的原因。對(duì)于學(xué)生來說這也意味著可以少寫大量 XML 和配置把精力放在業(yè)務(wù)邏輯上。這套系統(tǒng)用的版本是 Spring Boot 2.x配合 MyBatis-Plus 操作數(shù)據(jù)庫。MyBatis-Plus 簡直是為課設(shè)和中小型系統(tǒng)量身定做的BaseMapper里已經(jīng)封裝好了selectById、selectList、insert這些常用方法不需要自己寫 SQL分頁查詢用Page對(duì)象就能搞定。我曾在單表查詢非常多的地方直接用LambdaQueryWrapper來做條件拼接比如職位搜索時(shí)按關(guān)鍵詞、城市、薪資范圍過濾代碼比 XML 里的動(dòng)態(tài) SQL 還要好讀LambdaQueryWrapperJobPost wrapper new LambdaQueryWrapper(); wrapper.like(StringUtils.hasText(keyword), JobPost::getTitle, keyword) .eq(StringUtils.hasText(city), JobPost::getCity, city) .orderByDesc(JobPost::getCreateTime); return jobPostMapper.selectPage(new Page(pageNum, pageSize), wrapper);這種寫法的好處是類型安全字段名拼錯(cuò)了編譯階段就會(huì)暴露而不是等到運(yùn)行時(shí)報(bào)錯(cuò)。2.2 前端Vue 與后端靜態(tài)資源整合的坑系統(tǒng)前端是 Vue 寫的。我拿到的源碼里前端項(xiàng)目在一個(gè)frontend目錄下里面是標(biāo)準(zhǔn) Vue 2 Element UI axios vue-router vuex 結(jié)構(gòu)。開發(fā)環(huán)境上前后端通過 devServer 代理解決跨域生產(chǎn)環(huán)境上這套代碼采用了“把前端打包后塞進(jìn) Spring Boot 靜態(tài)目錄”的方式這也是熱詞里“vue打包放進(jìn)springboot”的典型訴求。為什么這么做因?yàn)檎n程設(shè)計(jì)或畢業(yè)設(shè)計(jì)的演示環(huán)境通常只有一臺(tái)服務(wù)器前端單獨(dú)部署還要配 Nginx麻煩且容易失敗。直接把 Vue 打包出來的dist目錄復(fù)制到src/main/resources/static下面Spring Boot 會(huì)自動(dòng)把它當(dāng)作靜態(tài)資源處理。也就是說除了/api/開頭的請(qǐng)求其他路徑都會(huì)返回 Vue 的頁面。這樣最終只需要打一個(gè) Jar 包就能同時(shí)提供頁面和數(shù)據(jù)接口部署起來省心很多。但這里有一個(gè)非常隱晦的坑Vue Router 默認(rèn)是history模式頁面路由是比如/student/course如果用戶直接刷新這個(gè)路徑Spring Boot 的靜態(tài)資源處理器會(huì)嘗試尋找student/course.html然后返回 404。解決方法就是在后端加一個(gè)控制器把非 API 的路徑都重定向到index.html。這套源碼里就是用Controller包了個(gè)ForwardControllerController public class ForwardController { GetMapping(value {/, /{path:[^\\.]*}, /{path:[^\\.]*}/{sub:[^\\.]*}}) public String forward() { return forward:/index.html; } }這個(gè)細(xì)節(jié)很多人一開始不知道我建議拿到源碼后先改掉默認(rèn)的 hash 路由用上面的方式處理否則部署完會(huì)彈出詭異的白屏。2.3 認(rèn)證與文件存儲(chǔ)JWT MinIO 的實(shí)戰(zhàn)選擇為什么選 JWT 而不用 Session因?yàn)橄到y(tǒng)的前端是 Vue而且未來可能會(huì)拆分成多個(gè)服務(wù)JWT 無狀態(tài)、跨域友好、能直接攜帶用戶信息。它的加密算法可以選對(duì)稱加密 HS256也可以用非對(duì)稱加密 RS256。這套系統(tǒng)用 HS256 更省事密鑰放在application.yml中登錄成功后生成一個(gè)包含userId和role的 token。同時(shí)它整合了 MinIO 來存圖片和 PDF 簡歷。MinIO 是一個(gè)對(duì)象存儲(chǔ)服務(wù)兼容 Amazon S3 API比起自建分布式文件系統(tǒng)簡單得多。熱詞中“minio加入到springboot”也是常見問題。這套系統(tǒng)在pom.xml里引入minio客戶端依賴配置好 endpoint、accessKey、secretKey 和 bucket然后封裝一個(gè)MinioServicepublic String uploadFile(MultipartFile file) { String fileName System.currentTimeMillis() _ file.getOriginalFilename(); minioClient.putObject( PutObjectArgs.builder() .bucket(bucketName) .object(fileName) .contentType(file.getContentType()) .stream(file.getInputStream(), file.getSize(), -1) .build()); return endpoint / bucketName / fileName; }用 MinIO 存簡歷 PDF 和公司資質(zhì)圖片比存 BLOB 字段更合理。數(shù)據(jù)庫維護(hù)文件的 URL 就行避免了數(shù)據(jù)庫膨脹也讓靜態(tài)資源可以走獨(dú)立域名。2.4 項(xiàng)目目錄結(jié)構(gòu)說明拿到源碼后建議先看目錄結(jié)構(gòu)。這是這套系統(tǒng)的包組織方式src/main/java/com/recruit ├── config/ # Security、MinIO、CORS、WebMvc 配置 ├── controller/ # 接口層按功能拆 Admin/Student/Company ├── service/ # 業(yè)務(wù)邏輯層接口 impl ├── mapper/ # MyBatis-Plus 持久層接口 ├── entity/ # 數(shù)據(jù)庫實(shí)體類 ├── dto/ # 接收參數(shù)的類 ├── vo/ # 返回給前端的數(shù)據(jù)對(duì)象 ├── common/ # 統(tǒng)一返回結(jié)果、異常處理、常量 ├── utils/ # JWT 工具類等我見過太多源碼所有類都堆在com.example下找起來非常痛苦。這套系統(tǒng)的包名雖然沒有特別規(guī)范但至少按功能拆得很清楚Controller 對(duì)應(yīng)的 Service、Mapper 可以直接跳轉(zhuǎn)這對(duì)學(xué)習(xí)和后續(xù)二次開發(fā)都很友好。3. 關(guān)鍵功能實(shí)現(xiàn)源碼級(jí)別的拆解整個(gè)系統(tǒng)的核心不在頁面布局而在幾個(gè)關(guān)鍵鏈路。我把其中最值得閱讀和修改的四個(gè)部分拎出來講。3.1 注冊(cè)與登錄Spring Security JWT 的集成要點(diǎn)登錄是所有系統(tǒng)的入口但很多人的登錄邏輯是當(dāng)成擺設(shè)。這套系統(tǒng)比較好的地方是它把 Spring Security 的UsernamePasswordAuthenticationToken和自定義 JWT 工具類結(jié)合了起來。具體實(shí)現(xiàn)上登錄接口先校驗(yàn)用戶名密碼成功后就生成 token。生成 token 的代碼大致是// utils/JwtUtil.java public String generateToken(User user) { return Jwts.builder() .setSubject(String.valueOf(user.getId())) .claim(role, user.getRole()) .claim(username, user.getUsername()) .setIssuedAt(new Date()) .setExpiration(new Date(System.currentTimeMillis() expireTime)) .signWith(SignatureAlgorithm.HS256, secretKey) .compact(); }然后寫一個(gè)JwtAuthenticationFilter繼承 Spring Security 的OncePerRequestFilter在每次請(qǐng)求進(jìn)來時(shí)取出 Authorization 頭解析 token把用戶權(quán)限寫入SecurityContextHolder。我在查看代碼時(shí)特別注意到它自己寫了一個(gè)getAuthentication方法定義了一些SimpleGrantedAuthority權(quán)限。集成時(shí)最容易出問題的點(diǎn)是 Security 放行規(guī)則。一定要記住/api/auth/login/api/auth/register/api/captcha這些公共接口不能攔截否則登錄都過不去。另外 Swagger 如果接入的話也要放行swagger-resources、v3/api-docs等路徑。這套系統(tǒng)在這塊處理得比較清楚你可以沿用它的規(guī)則。3.2 學(xué)生投遞簡歷的核心流程投遞是招聘系統(tǒng)的“下單”動(dòng)作所以我特別關(guān)注它的完整事務(wù)。學(xué)生點(diǎn)“投遞”按鈕后前端發(fā)送一個(gè)請(qǐng)求包含職位ID和簡歷ID。后端邏輯大致如下Transactional public Result apply(Integer studentId, Integer jobId, Integer resumeId) { JobPost job jobPostMapper.selectById(jobId); if (job null || job.getStatus() ! 1) { return Result.error(職位不存在或已下架); } // 防止重復(fù)投遞 Long count applicationMapper.selectCount( new LambdaQueryWrapperJobApplication() .eq(JobApplication::getJobId, jobId) .eq(JobApplication::getStudentId, studentId)); if (count 0) { return Result.error(請(qǐng)勿重復(fù)投遞); } JobApplication application new JobApplication(); application.setJobId(jobId); application.setResumeId(resumeId); application.setStudentId(studentId); application.setCompanyId(job.getCompanyId()); application.setStatus(0); // 0投遞中 applicationMapper.insert(application); return Result.success(投遞成功); }注意這里我用Transactional來保證事務(wù)因?yàn)檫@里讀后寫且存在重復(fù)投遞的并發(fā)風(fēng)險(xiǎn)。雖然實(shí)際中課設(shè)項(xiàng)目并發(fā)量不高但寫代碼時(shí)要把這個(gè)意識(shí)帶上。對(duì)于學(xué)生端來說之后查看投遞記錄的接口要把職位信息和面試信息聯(lián)表查出來不能只返回一個(gè)狀態(tài)數(shù)字。3.3 企業(yè)發(fā)布職位與簡歷篩選企業(yè)側(cè)的邏輯主要集中在CompanyController中。發(fā)布職位時(shí)公司不是必填字段而是從當(dāng)前登錄用戶的user記錄去關(guān)聯(lián)company表然后取companyName。我在源碼里看到它用SecurityUtils.getCurrentUserId()來獲取當(dāng)前登錄者的 ID再用 ID 去查關(guān)聯(lián)公司。這是一個(gè)很值得借鑒的小技巧避免前端手工傳 user_id 或 company_id減少越權(quán)風(fēng)險(xiǎn)。簡歷篩選的流程是企業(yè)查看某個(gè)職位下的所有投遞列表列表里要拼接學(xué)生的名字、學(xué)校、專業(yè)等點(diǎn)擊“查看簡歷”時(shí)調(diào)用/api/company/resume/{id}Controller 返回的是一個(gè)ResumeVO包含遠(yuǎn)程學(xué)歷信息和文件 URL。企業(yè)點(diǎn)擊“通過”后后端將job_application.status改為 2并自動(dòng)創(chuàng)建一條interview記錄此時(shí)學(xué)生端就能看到“面試邀請(qǐng)”狀態(tài)。PostMapping(/interview) public Result createInterview(RequestBody InterviewDTO dto) { JobApplication application applicationMapper.selectById(dto.getApplicationId()); application.setStatus(2); applicationMapper.updateById(application); Interview interview new Interview(); interview.setApplicationId(dto.getApplicationId()); interview.setCompanyId(application.getCompanyId()); interview.setStudentId(application.getStudentId()); interview.setTime(dto.getTime()); interview.setLocation(dto.getLocation()); interview.setRemark(dto.getRemark()); interviewMapper.insert(interview); return Result.success(); }這里其實(shí)可以做得更好比如發(fā)送站內(nèi)信或郵件通知但作為課設(shè)項(xiàng)目目前夠用。3.4 管理員數(shù)據(jù)看板的實(shí)現(xiàn)思路管理員的首頁一般是幾個(gè)統(tǒng)計(jì)卡片和圖表。這套系統(tǒng)的統(tǒng)計(jì)接口用了簡單的聚合查詢例如統(tǒng)計(jì)總注冊(cè)學(xué)生數(shù)、總企業(yè)數(shù)、總職位數(shù)、總投遞數(shù)。對(duì)于熱門職位排行它用了 MyBatis-Plus 的groupByQueryWrapperJobApplication wrapper new QueryWrapper(); wrapper.select(job_id, count(*) as cnt) .groupBy(job_id) .orderByDesc(cnt) .last(limit 10);然后把結(jié)果顯示成柱狀圖數(shù)據(jù)交給前端。雖然談不上大數(shù)據(jù)但管理員的日常運(yùn)營看板就是這種模式調(diào)試起來很直觀。你也可以在此基礎(chǔ)上增加時(shí)間范圍的篩選條件來統(tǒng)計(jì)某個(gè)月份的投遞趨勢。4. 從源碼到上線完整構(gòu)建、配置與避坑實(shí)錄很多人在本地能跑起來一到換個(gè)環(huán)境就歇菜了。我按照從零開始構(gòu)建這套系統(tǒng)的順序把配置和部署過程中的步驟和坑逐一記錄下來。4.1 環(huán)境準(zhǔn)備與基礎(chǔ)配置你需要準(zhǔn)備好這些JDK 1.8 或更高版本、Maven 3.6、MySQL 5.7、MinIO 服務(wù)、Node.js 14用于前端構(gòu)建。建議版本不要拉太高Spring Boot 2.x 在 JDK 17 下也能跑但一些老依賴可能存在問題熱詞里“springboot版本太高”就是一個(gè)常見坑如果你下載的依賴版本互相沖突優(yōu)先鎖定 Boot 版本為 2.7.x這是穩(wěn)定很多的安全牌。數(shù)據(jù)庫配置在application.yml里重點(diǎn)關(guān)注下面幾項(xiàng)server: port: 8080 spring: datasource: driver-class-name: com.mysql.cj.jdbc.Driver url: jdbc:mysql://localhost:3306/recruit?useUnicodetruecharacterEncodingutf8serverTimezoneAsia/Shanghai username: root password: 123456 servlet: multipart: max-file-size: 10MB max-request-size: 20MB minio: endpoint: http://localhost:9000 access-key: minioadmin secret-key: minioadmin bucket: recruit-file jwt: secret: your-secret-key-please-change-me expire-time: 86400000這些配置文件里最容易錯(cuò)的是時(shí)區(qū)和 URL。serverTimezoneAsia/Shanghai不設(shè)置的話可能會(huì)出現(xiàn) 8 小時(shí)的時(shí)間偏差。文件大小限制也要調(diào)大否則上傳簡歷 PDF 會(huì)直接報(bào)文件超限。4.2 前端打包如何塞進(jìn) Spring Boot前端項(xiàng)目在frontend文件夾里首先要把它的代理配置填好。開發(fā)階段vue.config.js里設(shè)proxy: /api指向http://localhost:8080用來解決本地前后端聯(lián)調(diào)的跨域問題。生產(chǎn)構(gòu)建時(shí)你需要先清理掉代理配置因?yàn)榍岸?static 目錄里的資源默認(rèn)同源。打包命令也很簡單cd frontend npm install npm run build構(gòu)建完成后dist目錄下會(huì)生成index.html和一堆 JS/CSS 文件。把這整個(gè)dist里的內(nèi)容復(fù)制到后端的src/main/resources/static目錄下。注意是復(fù)制內(nèi)容不是把dist文件夾復(fù)制進(jìn)去。復(fù)制完之后后端項(xiàng)目重新打包。前端里的接口請(qǐng)求地址必須用相對(duì)路徑例如/api/student/job/list不能寫死http://localhost:8080/...。我在拿到源碼后發(fā)現(xiàn)它寫了一個(gè)統(tǒng)一的request.jsbaseURL 設(shè)為空字符串這是合理設(shè)計(jì)。如果原來的源碼中有絕對(duì)地址你要先改成相對(duì)路徑否則上線必掛。4.3 后端部署Maven 插件、數(shù)據(jù)庫初始化數(shù)據(jù)庫的初始化腳本一般在sql目錄下比如recruit.sql。你需要用 Navicat 或者命令行導(dǎo)入。如果 SQL 文件里有測試數(shù)據(jù)直接跑一遍即可。我建議你把管理員賬號(hào)、測試學(xué)生、測試企業(yè)的密碼都問清楚或者自己先用后端的注冊(cè)頁注冊(cè)一個(gè)學(xué)生賬號(hào)再手動(dòng)把它的role改成ADMIN這樣至少能保證進(jìn)后臺(tái)。后端打包時(shí)Spring Boot 默認(rèn)打包會(huì)執(zhí)行測試如果項(xiàng)目里有測試類但環(huán)境不完整可能會(huì)失敗。我通常會(huì)跳過測試mvn clean package -DskipTests打完的target/*.jar就是可執(zhí)行 jar。啟動(dòng)時(shí)指定配置文件java -jar recruit-system.jar --spring.profiles.activeprod如果你沒有太多服務(wù)器經(jīng)驗(yàn)也可以用 spring-boot-maven-plugin 的repackage目標(biāo)把依賴都打進(jìn)去確保 jar 能獨(dú)立運(yùn)行。4.4 常見問題排查速查表我根據(jù)自己跑這類項(xiàng)目的實(shí)際經(jīng)歷把最常見的 6 個(gè)問題整理成了一張表當(dāng)你搭建時(shí)遇到卡住可以直接對(duì)照排查癥狀可能原因解決辦法啟動(dòng)后前端頁面能打開接口 404前端靜態(tài)資源和后端 API 路徑?jīng)_突或者 ForwardController 沒有包含某條路徑檢查index.html里的資源路徑是否正確重點(diǎn)看 js/css 引用的是相對(duì)還是絕對(duì)提交登錄接口報(bào) 403Security 配置里沒有放行登錄路徑或者 CSRF 未禁用在 SecurityConfig 里.csrf().disable()并把/api/auth/**加入 permitAll數(shù)據(jù)庫中文亂碼JDBC URL 缺少characterEncodingutf8或者表編碼不是 utf8mb4修改連接串并執(zhí)行ALTER TABLE xxx CONVERT TO CHARACTER SET utf8mb4;文件上傳失敗MinIO 桶未創(chuàng)建或密鑰錯(cuò)誤手動(dòng)用 browser 登錄 MinIO 控制臺(tái)創(chuàng)建指定的 bucket并檢查 access-key/secret-key刷新頁面變成白屏Vue Router history 模式?jīng)]有后端兜底加入 ForwardController 轉(zhuǎn)發(fā)所有非/api路徑到index.html接口總是 401 token 失效JWT 密鑰未統(tǒng)一或者系統(tǒng)時(shí)間不一致檢查前后端和服務(wù)器的系統(tǒng)時(shí)間JWT 過期時(shí)間不要設(shè)太短這些坑每一個(gè)我都遇到過一次以上。尤其是端口沖突問題在 IDE 里啟動(dòng)多個(gè)實(shí)例時(shí)經(jīng)常被占用可以在application.yml里改端口也可以在 IDEA 啟動(dòng)配置的 VM 參數(shù)里寫-Dserver.port8081。很多同學(xué)改完前端代碼重新打包發(fā)現(xiàn)頁面還是舊的原因是用瀏覽器緩存強(qiáng)烈建議部署時(shí)讓 Nginx 或后端靜態(tài)資源響應(yīng)頭加上Cache-Control: no-cache否則調(diào)試到懷疑人生。最后再分享一個(gè)能立刻提高演示好感度的小技巧——IDEA 里配置啟動(dòng)參數(shù)。如果你要在不同端口上開多套環(huán)境驗(yàn)證權(quán)限不用反復(fù)改 yml 文件而是點(diǎn)擊右上角啟動(dòng)配置在 Program arguments 里填寫--server.port9090Spring Boot 的命令行參數(shù)優(yōu)先級(jí)高于配置文件這個(gè)參數(shù)能直接覆蓋 yml 里的端口。這是我在實(shí)際開發(fā)中經(jīng)常用的一招尤其當(dāng)你同時(shí)跑后端服務(wù)和前端 devServer 的時(shí)候能少踩不少端口沖突的坑。把這套系統(tǒng)跑通弄明白每個(gè)模塊為什么這樣設(shè)計(jì)你不僅能完成一個(gè)像樣的課設(shè)還能在面試?yán)锪某鲆粋€(gè)有業(yè)務(wù)深度、有權(quán)限控制、有文件存儲(chǔ)的完整項(xiàng)目。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
精品人妻一区二区三区在| 综合久久激情久久| 九伊人网| 99亚洲大片精品永久在线观看 | 五月丁香激情欧洲啪啪| 丁香五月婷婷网| sewuyue第四色| 啪啪色区| 极品少妇婷婷五月| 五月丁香久久综合91| 日本色婷婷| 色五月丁香六月婷婷| 91欧美| 影音 五月 婷婷 久久| 天天色图| 欧美99热| 97在线视频人妻九色| 亚洲成人电影aaaa| 六月丁香激情最新更新| 欧美天天爽| 婷婷自拍| 丁香狠狠操| 乱精品一区字幕二区| 五月天丁香网站| 99热这里只有精品50| 性爱动图国产麻豆一区二区三区| 日本熟妇乱妇熟色A片蜜桃 | 色婷婷综合亚洲| 国产69久久久欧美黑人A片| 九九色色网| 狠狠操综合| 伊人久久五月天| 色综合夜夜| www.97碰碰com| 91热在线观看视频| 9久热视频| 欧美性生交XXXXX无码小说| 99热这里只有精品青草| 婷婷爱五月| 亚洲激情综| 五月婷婷中文字幕AV| 亚洲爱爱无码婷婷色五月| 激情综合网五月丁香| 91seAV| 五月婷婷久草| 碰久久精品w| 麻豆观看夏晴子| 免费无码毛片一区二区A片| www.激情五月| 激情五月婷婷| 五月丁香婷久久| 日本一级黄色片。| 91碰操| 99@久久@99精品视频| 亚洲精品V天堂中文字幕| 免费视频99| 久久久8| 丁香五月婷婷啪啪啪| 久草五月婷婷| 国产亚洲色婷婷久久99精品91| 五月婷婷AV| 婷婷开心激情综合五月天| 日本在线视频手机播放五月婷| 色99视| www.刺激色网站www.| 看逼中文字幕| 色九九综合| 淫视馆aV二区一区| 3p日韩网站视频| 成人丁香婷婷五月天| 五月丁香婷中文| 五月色婷婷AV| 五月丁香激情综合啪啪| 国产精品美女| 色婷婷亚洲综合av| 亭亭玉立国色天香| 另类视频丁香五月| 99在线视频资源| 啪啪99| 久久99热这里只频精品6学生| 人人摸人人澡人人| 在线观看中文字幕| 99色综合久久| 99riAv1国产在线观看| 婷婷五月色情天| 综合亚洲五月天| 开心五月丁香婷婷| 色欲天天综合| 婷婷五月天VI| 高清不卡一区| 激情九九综合网| 中文AV网站| 超碰人人干| 亚洲超碰在线| 天天综合五月天| WWW,色五月| 六月五月久久丁香| 色狠狠999综合| 夜夜爽天天干| 综合网狠狠| 色婷婷婷婷| 午夜理论片最新午夜理论剧| 五月婷婷在线视频| 激情内射人妻1区2区3区| 青青草五月天| www·五月天| 五月天国产| 丁香五月伊人| 伊人久久综合| 日本九九热| 九九热啪啪| 丁香六月婷婷| 五月丁香激情婷婷| 久久加勒比| 中文在线成人| 丁香色六月| www狠狠| 丁香色五月 97干| av首页在线| 97精品自拍| 婷婷丁香亚洲五月天| 五月天.com| 久操热| 色婷婷女优有码五月亭| 狠色狠色狠色狠色狠色网| 一本色道久久综合狠狠躁小说| 日日干综合| 这里只有精品免费视频| 毛片九九九九九九九九18| 91ncom.色| 丁香色情五月综合网站| CHINESE熟女老女人HD视频| 亚洲综合成人网站| 欧美VA在线观看| 久久婷婷成人综合色怡春院| 九九九九大香蕉| 99热这只有| 六月婷婷视频| 色婷婷女优有码五月亭| 热99精品视频| www.丁香黄色五月天人与| 婷婷操久久| 丁香婷在线| 婷婷丁香18| www.99日本| 九九热在这里只有精品| 在线看的免费网站| 婷婷在线操| 色欲天天综合网| 夜夜AVV| 人妻肉射免费观看| 射婷婷中文字幕| 久久er这里只有精品| 丁香五月社区| 五月婷激情影院| 婷婷五月丁香香蕉| 91精品丝袜久久久久久久久粉嫩| 深爱五月婷婷开心中文字幕| 青草激情综合| av中文在线| 五月天丁香| 色色综合五月| 国产成人高清| 9久久久久| www婷婷| 五月婷婷很很色| 熟女五月天久久综合| 色综合天天| 99日本精品视频热| 色婷婷香蕉| 99操逼| 婷婷午夜| 婷婷天天插天天爱| 五月停性愛| 99秘 在线| 国产成人精品一区二三区熟女在线| 婷婷九九视频| 淫视馆aV二区一区| 久久电影五月天丁香电影| 熟妇高潮一区av| 日韩一级片| 任你爽视频| 国产97色在线| 丁香六月AV| 亚洲人妻av| 久九色| 欧美丁香六月激情视频| 一本狠婷婷综合| 玖玖资源天天无码| 久青草大香蕉| 人妻久热| 激情小说五月天社区丁香 | 久久九九99字幕| 九九热这里| 九九久久99精品免费观看www| 亚洲成人色五月婷婷综合| 婷婷五月激情的图片| 色欲影香| 久久机热这里只有精品免费视频| 久久九九国产精品怡红院| 岛国午夜视频| 五月天播播| 色狠狠综合入口| 欧美日韩成人在线网| www.com亚洲网站在线免费| 中文字幕av在线播放| 97人人爱人人操| 久久婷婷色综合| 日韩久久视频| 伊人无码高清| 九九狠狠干| 九九热123| 久久久aaa| 91操在线视频| 五月丁香六月综合激情无码软件亮点 | 亚洲av网站| 丁香亚洲婷婷五月| 久久精品国产AV一区二区三区 | 五月婷婷玖玖综合玖玖爱| 99色看| 五月丁香婷婷色| 亚洲在线成人| 欧美性爱专区| 亚洲国产无线乱码在线观看| 97碰在线视频| www.yw色| 色五月婷婷在线观看| 五月婷婷综合激情| 91丨九色熟女丨首页| 色综合伊人网| 成人做爰高潮A片免费视频 | 中文国产五月天| 色婷婷久久久| 中文字幕黄色片| 色综合天堂| 操日视频| 五月婷网| 五月婷婷啪啪| 性日本精品| 色久五月天| 99热这里只有精品搜| www.九月婷婷丁香.com| 99成人| 色婷婷香蕉丁丁网| 色五月综合激情| 人人爽网| http://www.lingjunshare.com/| 丁香五月伊人| 麻豆五月丁香婷婷| 色久婷婷五月| 亚洲成人网站在线播放| WWW色五月| 色色色婷| 九九婷婷五月天| 丁香成人五月天| 99热在线观看成人| 丁香六月啪| 激情综合网,婷婷五月天| 综合久久综合久久| 99丁香五月婷婷在线| 午夜大香蕉| 婷婷欧美| 99热这里只有免费| 99热久久最新地址| 欧美狠狠一在草| 丁香五月天激情四射网| 97精品综合久久内射| 五月丁香综合网| 99视频| 国熟女视频| 色五月成人| 天天干天天色天天干| 丁香六月色婷婷| 99ri6在线视频| 六月婷婷激情| 无码髙清| 久久月天堂| 99热在线精品观看| 激情网五月天| 欧爱综合视频| 色情久久久| 超碰国产在线| 人人操日| 久久精典| 五月久熟女| 碰人人97| 久久五月天 91| av操B网站| 中文字幕欧美日韩VA免费视频| 俺也去婷婷五月天第五色| 99热观看| 91久久九九| 玖玖91| 99在线免费视频| 日本久久高清| 少妇高潮一区二区三区99欧美| 色狠狠伊人久久五月丁香| 亚洲五月婷| 婷婷五月天丁香社区| 色综合久久88色综合天天| 9色婷婷| 性做爰A片免费视频A片直播| 小香蕉av| va婷婷| 五月丁香爱婷婷深深| 97人人草| 婷婷五月天另类视频| 五月久久五月激情| 激情q青青草在线婷婷| 狼人久草| www.99热视频在线观看| 99热综合在线观看| 天天舔天天| 5月婷婷6月丁香aV| 丁香五月激情综合啪啪| 天天干天天色综合| 大香蕉久久久| 五月丁香偷拍| 国产69久久久欧美黑人A片| 中文字幕成人| 五月丁香成人网| 国产日韩欧美| 禁片二区| 91偷拍视频| 婷婷久久网| 九九激情网| 久久五月婷综合网| 亚洲99精品欧美一区| 黄网在线观看免费| 色婷婷综合视频| 亚洲激情综合| 在线不卡的视频| 狠狠色丁香婷婷| 欧美伊人9| 五月停停色色丁香| 久久久久综合激动五月天| 曰本久久女| 久久婷婷五月综合色和| 美女精品一级不卡视频| 狠狠五月丁香色婷| 六月激情久久| 99亚洲精品视频| 欧美成人精品三区综合A片| 成人无码髙潮喷水A片| 婷婷五月激情在线| 五月天婷婷色| 狠狠操狠狠干综合| 久9视频| 久久综合影院| 亚洲A色| 99久在线精品99re5热视频| 亚洲五月婷| 婷婷五月成人| 五月婷婷草| 色啪网| 五月婷婷之美女图片| 97色色色| 99精品偷自拍| 久久久ww| 日逼免费视频 | 操熟女成人网| 丁香久久综合| 婷婷丁香红五月91C| 停停五月色宗合| 99爱免费在线观看| 免费黄色AV| 狠狠精品干练久久久无码中文字幕| 色五月综合激情| 激情av| 婷婷五月天黄色小说| 丁香六月啪啪啪| 免费观看欧美成人AA片爱我多深| 丁香婷婷综合喷| 五月婷婷另类| 97色色视频| 深爱激情五月天| 99资源在线| 99er6| 九九无码| 天天日天天摸| 五月丁香综合激情| 中文精品久久久久人妻不| 日韩国产AV播放| 激情图片婷婷| 99热国产精品| 中文不卡av| 婷婷五月在线免费| 五月婷婷偷拍| 伊人大香久久| 99精品网站| 天天爽天天| 久热99狠| 激情五月丁香在线观看直播| 婷婷五月天伊人| 中文字幕婷婷在线| AAA亚洲AV| 天天射影院| 丁香五月天激情四射网| 色综合99| 欧美啪啪五月天| 天天日 天天草| 香蕉婷婷色五月| www.超碰在线| 日日想日日夜日日操| 亚洲色色色色| 就爱日五月天| 中文字幕在线播放视频| 五月婷婷久久网| 九九激情| 99热这里全是精品| 呦呦AV| 99丝袜精品视频网站| 天天夜夜爽| 久久99激情| 国产在线aaa片一区二区99| 亚洲色婷婷| 久超超碰| 日本在线视频www色| 99精品免费| 丁香九色不卡aaa | 岛国AV网站| 99热网精品| 婷婷五月天色综合翘| 思思热在线精品视频| 操人91| 91丁香五月| 超碰色女人| 国产激情综合五月久久| wWW九九在线播放| 五月综合激情视频在线| 免费AV在线| 激情小说五月天| jiujiujiuwuyuetian| www.狠狠操| 超级碰碰碰碰视频| 亚洲第一成人无码A片| 丁香婷婷五月人体| 久婷婷婷| 天天爽成人综合网站| 婷婷五月开心中文字幕色| 大香蕉久| 欧美综合婷婷网| 在线视频区| 综合综合网| 人妻在线观看视频| 久热免费视频| 五月丁香成人| 操人91| 在线,国产,色,热视频| 亚洲精品无码一区二区| 五月婷婷丁香色播网| 色播色丁香五月| 人妻少妇色综合| 丁香五月天激情| 亚洲成人网站在线观看| 久久九九在线视频| 久久综合无| 久久婷婷五月天| 色五月丁香总合网| 丁香av网| 99热综合| 色五月开心开心五月激情五月| 无码色色色| 六月色色综合| 偷偷操九九| 综合久久久| 色色激情| 久久综合图片| 丁香成人五月天| sewuyuejiqingwang| 九月婷婷综合在线| 激情綜合W W W,激情五月天| 色婷婷av在线观看| 91综合色噜噜| 婷婷大乡焦噜噜| 天天干天天插| 久久久久er热| 伊人综合网站| 亚洲人人操| 亚州欧美国产久精国产99综合视频| 狠狠99| 丁香五月天啪啪| 激情内射人妻1区2区3区| 99re这里只有精品视频了| 五月丁香久久久久| 亚洲av综合在线| 大香蕉五月天婷婷| 五月婷婷丁香狠狠撸久久| 黄网在线免费观看| 91亚洲视频| 婷婷深爱五月| 美国十月色婷婷在线观看| 99热这里有精品6| yazhochengrenavwang| 色婷婷成人做爰A片免费看网站| 在线区区区| 色色色色区| 亚洲妇女熟BBW| 天天综合情| 色九月婷婷综合| 六月婷婷香蕉| 亚洲色婷婷| 玖玖资源站蜜臀| 激情综合网五月在线播放| 综合久久十三| 婷婷五月天激情网| 久99综合婷婷| 可以看的AV| 国产精品色一哟哟| 丁香婷婷精品视频| 爽极品色| 色五月大| 欧美69色| 五月天久久小说| 精品国产乱码久久久久夜深人妻| 五月婷婷香蕉视频| 久久性爱视频| 五月丁香999| 五月天涩涩| 大波美女VA网站| 亚洲一个色| 欧美色碰| 久久日九九| 日韩黄在免| www.色婷婷.com| 9久久久久久久久久久| 五月丁香六月婷婷激情视频在线观看免费| 超碰二区| 日本精品干| 免费操超碰| 亚洲日韩成人三级av| 99色色| 国产成人AV在线| 黄色成人网站在线播放| 日本高清久| 色色色综合网| 六月激情网| 99热精品中文字幕| 欧美成人网99网| 五月婷婷六月丁香色| 另类综合网| 青草热视频这里只有精品| 五月婷婷久久开心网| 久久丁香| 激情综合自拍五月婷婷色五月| 激情婷婷。| 婷婷激情五月天桃花网| 超碰免费人人肏| 婷婷丁香红五月91C| 精品国产AV色一区二区深夜久久| 狠狠狠狠狠狠| 狠狠色噜噜狠狠狠888| 99久久玖玖| 亚洲丁香网| 五月婷综合网| 丁香天堂夜| 九九热91| 伊人大香久久| 99热老司机| 色欲婷婷五月天| 99热精品在线| 婷婷色色综合激情| 亚洲十月婷婷综合| 俺去也综合| 国产激情在线| 26uuu最新地址| 色偷偷五月天| 99视频这里有精品| 99热99草97| 婷婷情色五月天| 91人妻色色网| 丁香久久五月天视频在线观看 | 国产超碰在线| 99热国产在| 九九视频精品在线免费| 激情五月视频在线婷婷| 五月色婷婷中文字幕| 99热首页| 精品热青草| 99久在线精品99re5热视频| 性高潮久久久久久-九九九九九九九九九九热-成人AV | 五月天婷亚洲天综合网综合 | 五月色情| 婷婷激情四射五月天| 玖玖99免费视频| 思思久久99热| 玖玖婷婷五月天| 五月大香蕉| 少妇人妻丰满做爰XXX| 热久久999| 黄久久久| 五月婷成人| 日日操日日爽| 天天噜日日噜综合无码| 久久久99精品免费观看| 丁香狠狠色婷婷| 五月婷婷啪| 色婷婷很很丝袜| 99热99极品观看| 国产噜一噜天天噜| 色色色色色色色色网站| 天天操婷婷| 国产三级在线播放| 激情丁香久久| 99精在线| 激情婷婷五月天| 91亚洲免费片| 99'无码| 夜夜操天天干| 思思热在线观看| 亚洲九九婷婷| 亚洲mm色| 五月天婷婷久久视频| 丁香五月婷婷国产av| 五月天综合激情网| 久狠日av| 少妇熟女视频一区二区三区| 欧美日韩成人免费在线| 99热777| 99热亚洲精品| 丁香五月www| 亚洲 精品 综合 精品| 日日肏天天操| 538在线精品| 日韩高清成人| 少妇激情五月天| 少妇人妻人伦A片| 人人综合色| 丁香五月aV| 日本久久综合| 91视频人人做97| 狠狠干狠狠干狠狠干狠狠干| 天天肏天天肏天天肏| 伊人天堂婷婷| 综合色综合| www五月| 五月丁香六月色| 5月婷婷五月天| 乱乱av| 丁香六月啪啪| 青青草原亚洲天堂| site:pnnrt.com| 桃色五月婷婷| 啪啪啪五月天| 精品一二三区久久AAA片 | 丁香丝袜五月| 99国产精品久久久久久久久久久 | 丁香九月综合激情| 青吴乐视频| 亚洲六月婷| 激情五月综合| 六月婷婷深深爱| 色综合九九| 97婷婷五月| 亚洲 六月 综合| 桃色成人网| 婷婷五月天成人五月天| 91人妻PORNY九色大屁股| 97五月婷婷| 日日爽天天| 9色91视频| 五月伊人视频在线看| 婷婷五月天激情网| 天天噜天天爱| se色婷婷视频| 婷婷五月伦理| 91九九热| 五月丁香香蕉| 五月婷婷六月综合| 亚洲成人网在线观看| w婷婷五月婷婷w| 超碰色综合| 色婷婷丁香综合中文字幕| 九九热经典视频在线观看| 69人人操人人爽| 五月丁香色| 九九99在线| 无码髙清| 五月丁香日本一抹本| 99自拍视频在线观看| 色婷婷五月天天天天天| 无码人妻少妇色欲AV一区二区| 性色综合网| 激情AV在线| 九洲一级A片| 激情欧美五月丁香| 五月天婷婷在线观看精品男人| 99re思思热久久| 色婷婷综合丁香五月天| 狠狠爱婷婷爱| 亚洲小视频免费观看| 国产美女无遮挡裸体毛片A片| 五月婷在线影院| 婷婷激情五月综合| 中文久久久人妻| 日本黄色三级片内射| 婷婷久久亚洲| 变态另类色图| 人妻中文在线| renrencaoav| 日本久碰| 婷婷久久网| 狠狠色无码| 综合久久综合综合| 欧美va在线| 六月婷婷私欲| 亚洲正能量欧美| 婷婷五月天av| 久久杏爱视频| www.久久色.com| 爆乳熟妇一区二区三区爆乳照片| 久久婷婷草| 五月丁香婷婷色| 天天综合天天玩夜夜玩天天玩夜夜玩 | 国产SUV精品一区二区883| 五月婷婷丁香在线视频| 婷婷欧美综合| 中国女人做爰A片| 无码操B| 开心婷婷中文字慕| 韩国真做片在线观看| 99热成人精品网站| www.99热最新视频8| 丁香五月天亚洲综合| 综合色五月| 淫荡工a| 久久停停超碰| 色99久草在线| 久久综合丁香激情五月| 激情综合网五月激情| 综合97五月| 亚洲图色五月天| 婷婷五月激情中文字幕| RenRenSe在线视频网站| 久久婷视频| 桃色成人网| 97碰碰视频在线观看| 五月丁香色婷婷基地| 97综合在线| 红桃91人妻爽人妻爽| WWW.婷婷| 婷婷激情六月| 97好吊操| 伊人丁香六月婷婷| …亚洲黄色在线播放日韩、av中文a…| 欧州色色| 五月婷婷亚洲天堂激情在线| 亚洲色人妻| 五月停性愛| 成人在线99| 欧美色五月| 开心五月激情婷婷| 五月丁香成人日| 久久伦乱| 任你搞在线观看视频| 国产肥白大熟妇BBBB视频 | 婷婷综合五月天| 五月丁香婷婷导航视频| 天天擼久久擼在线| 九九视频精品视频精品| 五月激情丁香五月| 97性视频| 亚洲AV无码成人精品电影| 国产一级黄色影片,| 激情婷婷六月天| 狠狠五月激情丁香六月| 亚洲色情网站| 天天天摸夜夜夜玩| 五月的婷婷六月丁香| 丁香五月天无码AV| 黄色五月婷婷| 大香蕉五月| 五月丁香 狠狠爱| 亚洲av成人在线| 色色色色色级无码| 婷婷久久婷婷色五月| 五月丁香六月激情| 91久久精品国产91性色TV| 玖玖婷婷五月天| 天天插天天干| 五月天婷婷操逼视频| 五月天开心婷婷激情网站 | 五月天久久www| 欧美噜噜噜草| 色色婷| 大香蕉网站,大香蕉综合| 婷婷激情五月天小说| 激情精品久久| 奇米色大香蕉| 五月天婷婷狂暴白浆| 麻豆AV一区二区三区| 国产免费AV在线| 91色色色| 色五月天婷婷| 天天做天天爱| 成人免费120分钟啪啪| 99性爱| 老师的粉嫩小又紧水又多A片视频| 色五月综合在线| 天天免费日日夜夜夜夜| 欧美3AaAa大片| 五月婷婷乱| 婷婷五月天首页| 99热这里只有精品免费观看| 五月丁香亚洲综合| 丁香五月天成人网站| www.色五月| 97av在线视频| 久久曰曰| 欧美情色电影一区二区| 五月天另类小说久久小说网| 色色色五月| 91人人操| 99操碰| 婷婷五月亚洲激情| 欧美天天干天天草| 色婷婷丁香五月天在线观看| 99热碰碰| 热久久这里只有精品| 丁香六月啪啪| 乱精品一区字幕二区| 色五月丁香五| 五月久久婷婷天堂视频| 婷婷性爱影院| 丁香五月婷婷六月婷| 色丁香五月综合网| 婷婷激情五月天在线| 五月婷婷亞洲中文| 婷婷激情六月综合| 99亚洲精品| 久久婷婷网址| 中美日韩成人在线| 狠狠人人| WWW五月| 色婷婷婷婷| 懂色av粉嫩av蜜臀av| 久久人五月| 9热久久| 电影蜘蛛女| 亚城区在线| 91操网| www婷婷色| 天天插天天射天天干| 伊人婷婷青青cao| 五月天婷婷激情春色小说| 狠狠久久婷五月| 色婷婷丁香A片区毛片区女人区| 久久婷婷色| 99色在线视频| www.91AV.COM| 激情五月开心五月在线视频| 五月丁香人人婷婷在线观看| www.婷婷亚洲基地| 色五月婷婷777| 黄色片精品| 丁香婷婷激情综合五月激情| 欧美成人性爱网| 五月丁香五月综合欧美| 久草视频大香蕉99| 五月丁香综合啪啪啪啪啪| VfJxEwPH| 婷婷亚洲影院| 91在线操逼视频| 九九热在线精品视频| 天天综合在线网| 99这里精品| 婷婷丁香人妻天久久| 国产婷婷久久| 国产精品久久久久9999小说 | 入口五月婷婷六月香| 丁香五月婷婷操逼| 国产,欧美,学生妹,视频| 日本久久婷| 天天日天天草| 婷婷五月天少妇| 91丨熟女丨首页| 丁香婷婷五月色成人网站| 校园春色亚洲色| 国外亚洲成AV人片在线观看| 九九热黄色| 播五月,色五月,开心五月播放器 | 激情五月丁香婷婷夜夜操| 成人网页在线观看| www.婷婷五月天| 99久久久免费| 色五月婷婷网| 韩国天天婷婷| www久热com| 亚州视频九九99| ss五月天激情| 婷婷区日本| 伊人五月天综合网| 狠狠色丁香久久综合婷婷亚洲成人福利| 久草xx性爱视频| 五月丁香婷婷中文网| 五月伊人综合| 天天情天天狠天天透| 亚洲精品乱码久久久久久按摩观| 色婷婷丁香五月| 亚洲天天| 九九这里都是精品| 热九九精品| 天天天天干| 色色色热| 亚洲亚洲人成综合网络| 亚洲亚洲人成综合网络| 韩国真做片在线观看| 成人精品人妻| 真实亲子乱子伦高清在线观看| 996er热| 婷婷丁香五月天影院| 99热啪啪| 99丁香五月婷| 大香蕉九九操| 五月婷婷日| 婷婷五月天亚洲五码| 久久久精品色色色| 99re视频精品| h亚洲| 超碰色综合| 久久久999精品| 五月天婷婷久久| 69精品人人人人| 欧美性生交XXXXX无码小说| 五月婷婷激情啪啪| 久色88| 五月丁香久久呀| 成人五月天综合网| 免费99情趣网视频| 人人爽人人爽人人爽人人爽| 色,激情五月天| 五月婷婷乱| 色导航色婷婷五月天在线观看| 婷婷色在线| 丁香五月骚喷水视频| 婷婷五月天激情影片| 2025色婷婷| 六月丁香婷| 成人免费120分钟啪啪| www天堂99| 99九九99九九九视频精彩| 久久婷婷五月天激情新地址| 丁香五月综合福利视频导航| 九九国产精视频| 天天操夜夜玩!| 另类激情综合| 五月丁香五月综合欧美| 日韩欧美不卡| 日韩高清久久| 99热99热在线观看| 久久久天天啊| 亚洲无码色| www.色色色com| 4399成人黄A片| 另类小说婷婷色| 色五月婷婷大香蕉| 精品一二三区久久AAA片| 人操人| 久久久思思热| 99热精品在线观看| 99噜噜噜在线播放| 久色88| 五月婷婷之激情五月| 国产三级片91| www免费在线视频| 69精品人人人人| 欧美激情凹凸丁香网| 狠狠爱婷婷爱| 日韩有码一区| 五月婷婷内射网| 九九色热| 操97在线观看| 天天干,天天舔| 丁香色婷婷五月天| 亚洲AV影片在线观看| 激情另类综合| 五月婷婷天| 图片区 小说区 区 亚洲五月| 婷婷五月天激情文学| 日本天堂网站99| 色综合色欲综合天天免费| 亚洲五月天激情| 亚洲无AV在线中文字幕| 91九色首页| 99热国产这里只有| 丁香婷婷免费| 开心五月丁香综合久久| 五月天日日操夜夜操| 婷婷五月天亚洲丁香| 伊人色综合网| 熟女激情网| 超碰猛烈的性猛交| 五月天色五月| 五月婷婷综合丁香视频| 再次出发二| 91九九九九九九| 婷婷91| 99re鈥哸鈥唙| 天天插天天插天天日| 91av色色乱视频| 一级黄色影片| 桃色五月天| 色欲丁香久久| 亚洲色情久久| 69久热| 成人丁香| 久久这里只有精品99| 蜜臀A∨在线水帘洞| www.99热在线观看| 五月婷婷影视| 人人摸人人摸| 成人婷婷| 一级操逼内射在线视频| 婷婷丁香五月亚洲欧美| 九九亚洲无码| 久久婷婷五月综合色丁香花| 丁香婷婷网| 婷婷五月天小说网| 婷婷丁香五月天综合网| 精品思思久久| 六月丁香狠狠爱| 色色色色色色综合网| 99ri在线视频| 激情四射网| 亚洲中文乱字字幕在线永久| 无码毛片992367| 色八月婷婷| 另类精品视频在线观看| 99热日韩| 久久久天堂国产精品女人| 狠狠人妻久久久久久综合丁香| 伊人春天av| 日本婷婷| 成人片久久网站| 久热大香蕉| 激情欧美婷五月| 婷婷伊人| 亚州精品久久久久AV无码| 伊人大综合| 九九这里都是精品| 91AV婷婷| 五月丁香六月激情在线| 久久久精品视频79| 色色色综合网| 西瓜美女a片| 国产黄色av| 激情综合网五月| 五月丁香婷婷色色| 少妇搡BBBB搡BBB搡毛茸茸| 99热最新网址| 久婷婷五月天影院| 大香蕉伊人久久| 丁香五月 综合| 久久丁香综合精品综合| 丁香五月欧美| 99热全是精品| 操一操干一干| 色婷婷综合中心| 伊人久久大香线蕉综合网站| 美女精品一级不卡视频| 丁香五月激情宗合| 艹色18p| 色综合久久天天综合网| 久久这里99| 7777精品伊人久久久大香线蕉最新版| 精品久久婷婷五月天| 五月丁香综合久久夜夜| 97碰碰人人| 五月丁六月香av| 67194中文字幕| 少妇综合网| 激情五月婷婷在线| 91肏| 欧美日韩精品人妻狠狠躁免费视频| 狠狠爱婷婷爱| 被强行糟蹋的女人A片| 五月婷婷六月婷| 婷婷丁香色五月亚洲| 久久大香蕉丁香| 久久99久久99精品免视看婷婷| 99久在线观看| 99在线精品免费视频| 丁香婷婷色九月| 五月色丁香婷婷中文字幕| 成人免费黄色短视频| 久久免费操| 天天操夜夜玩!| 亚洲午夜AV| 精品国婬伦V无码久久久| 极品人妻VideOssS人妻| 五月丁香婷婷综合| 这里只有精品视频在线看| 天天日天天肏天天奸| 激情五月综合网| 日本激情综合| 天天摸,天天爽| 99久久视频| 99riAV成人在线视频| 婷婷综合久久| 五月丁香偷拍| 五月色丁香激情| www。五月天激情| 先锋资源91| 20253AV| 狼人婷婷久久| 日韩AAAAA| w婷婷五月婷婷w| 天天综合亚洲综合网天天αⅴ| 五月天成人综合| 五月天综合视频| 99久热这里有精品| 久久性刺激| 狠狠久久婷婷| 成人 在线观看国产| 婷婷色导航| 激情综合网五月丁香| 国产VA亚洲VA96| m色激情网| XXXX岛国| 五月丁香日本片| 欧美 日韩 成人在线| 国产午夜精品一区二区| 久久丁香婷婷色情综合| 婷婷色婷婷| 精品成人久久久久久久_一二三四视| 99热大香蕉| 另类图片激情五月| 婷婷五月天大香蕉| 成人免费120分钟啪啪| 亚洲色99| 亚洲黄色精品| 另类视频综合| 26.uuu丁香五月婷婷| 97碰碰视频| 小视频久久久aaa| 色色网站在线| 99热网站在线观看| 丁香六月AV| 色丁香五月天射婷婷爱婷婷| 另类国产区| AV成人在线播放| 97欧美在线| 庭庭久久内射| 精品女人九九九| 99re免费精品视频| www.99热视频| 天天草人人摸| 五月丁香日本片| 日本综合色色| 婷婷丁香六月| 97久久视频| 色六月丁香婷婷狠狠干| 婷婷五月 丁香六月| 伊人丁香花综合影院| 激情五月丁香激情综合网 | 精品色色| 欧美激情综合色综合啪啪五月| 丁婷婷五月天在线播放| 狠狠狠狠狠狠狠狠| 日本女人久久| 日韩操逼大片| 久久99综合| 中文字幕在线免费看线人| 丰滿爆乳一区二区三区| 九九成年视频| 先锋资源婷婷| 九九九九毛片| 婷婷狠狠操| 久婷婷五月激情| 天天干天天干天天干天天干天天干天天干天天| 99色免费视频| 五月丁香香蕉| 五月色亚洲| 国产成人精品一区二三区熟女在线| 99热精品在这里| 欧美性猛交 XXXX 乱大交| 在线视频婷婷| 99久免费视频| 色色色色色色色色色色色色色色,网站| 婷婷精品综合| 亭亭五月色男人| 色色色欧美| 少妇人妻偷人精品无码视频新浪| 色五月综合在线| 狠狠狠狠狠干| 亚洲人妻电影| 二色AV| 丁香五月亚洲婷婷| 岛国av网站| 韩国激情五月天综合网| 五月婷婷色五月| 色.五月综合网| 久久婷婷五月丁香网| 激情婷婷五月天网址| 99这里只有精品视频| 婷婷五月激情综合| 五月四色激情| 狠狠爱婷婷爱| 99热在线观看这里只有精品| 久久久久久97| 五月四色激情| 亚洲另类婷婷综合| www激情网| 99精品在线观看视频| 日本女色人人| 久久综合影院| 综合图区激情| 亚洲中文av| 激情超碰网| 天天天久久久| 亚洲精品性色| 六月婷婷激情| 91 九色大美女| 超碰女人天堂| 丁香婷婷五月天色综合| 99久精品视频| 高清资源站日A美A欧亚…| 久久丁香| 丁香五月另类小说| 久久久国产精品黄毛片| 久婷婷久草| 婷婷五月 丁香六月| www.99热| 超碰自拍天堂| 日韩狠狠色婷婷| 色综合久久888| 奇米色大香蕉| 99热日本| 丁香六月婷婷| 偷拍91九色| 一级二级香港秋霞欧美欧美秋霞| ss视频xx91| 色播综合| 伊人久久婷| 婷婷激情五月综合| 伊人九九68| 精品国产人人爱人人| 99热九九热| 成人av观看| 天天做天天爱| 嫩草AV久久伊人妇女超级A| 激情综合五| 激情宗合网激情五月天| 国产成人精品一区二三区熟女在线| 日韩九九| 欧美色色色色色| 亚洲VA口| 色五月中文字幕| 五月婷婷手机在线| 涩丁香| 国产精品操| 91要啪| 天天操天天插天天射| 影音先锋女人av鲁色资源网小说免费| 久久人妻人人槡| 国外亚洲成AV人片在线观看| 91狠狠色色丁香婷婷综合久久| 91久久久久久久久18| 婷婷五月丁香久久| 淫视馆av三区| 五月激情丁香久久综合网| 久久XX| 婷婷五月天视| 狠狠干狠狠干| 五月丁香WWW| 九九视频在线观看视频6 |