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

ARTICLE DETAIL

資訊詳情

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

會議室預約系統(tǒng)狀態(tài)機與并發(fā)控制實戰(zhàn)設計

會議室預約系統(tǒng)狀態(tài)機與并發(fā)控制實戰(zhàn)設計 簡介這是一套面向Java Web初學者與企業(yè)信息化開發(fā)者的會議室資源管理實戰(zhàn)項目聚焦會議場景下的多角色協(xié)同預約需求解決傳統(tǒng)人工排會易沖突、效率低、信息不同步等痛點。資源包共744個文件5.01MB涵蓋20個JSP核心頁面實現(xiàn)用戶交互與業(yè)務跳轉(zhuǎn)、212個JS腳本含表單驗證與動態(tài)日歷控件、74個HTML靜態(tài)頁公告展示與說明、26個CSS樣式文件響應式界面布局及31個PNG/GIF圖標資源輔以JavaBean類、Servlet配置、SQL建表語句與Tomcat部署說明構(gòu)成完整MVC分層結(jié)構(gòu)。已有1659人學習下載讀者可直接部署運行掌握基于JSPServletMySQL的Web應用開發(fā)全流程包括部門/員工/會議室三級數(shù)據(jù)建模、Session權限控制、預約沖突檢測邏輯、前后端交互規(guī)范及常見安全加固實踐。1. 為什么一個“會議室預約”系統(tǒng)反而最容易暴露畢設/課設的硬傷你手上的這個「JAVA JSP會議室預約系統(tǒng)」表面看是教務管理里的小模塊但實際是檢驗工程能力的試金石——它不考炫技算法卻卡在真實業(yè)務閉環(huán)的每個毛細血管里誰在什么時間、用什么身份、預約哪間帶投影儀的3號會議室預約后能不能被行政老師一鍵駁回駁回理由要不要留痕已確認的預約臨時加人怎么同步通知這些不是“功能點”而是權限流、狀態(tài)機、并發(fā)控制、日志追溯四重關卡。我?guī)н^三屆學生做這類系統(tǒng)80%的翻車現(xiàn)場都出在“以為JSPServlet能跑通登錄就等于系統(tǒng)做完”——結(jié)果答辯時導師一問“兩個老師同時點下‘確認使用’按鈕系統(tǒng)怎么保證只生成一條占用記錄”當場啞火。這套方案專為踩過坑的人設計從真實會議場景倒推架構(gòu)用可驗證的狀態(tài)遷移圖定義流程給出帶事務注解的DAO層關鍵代碼附帶5條高發(fā)并發(fā)/權限/數(shù)據(jù)一致性黑盒問題排查清單。適合正在趕畢設/課設、需要一份能跑、能講、能答的完整交付物的同學也適合作為小型OA中會議模塊的技術參考原型。2. 需求建模與核心狀態(tài)機設計把“開會”這件事拆解成可編碼的規(guī)則會議室預約不是簡單的CRUD而是一套受角色、時間、設備、審批鏈多重約束的狀態(tài)流轉(zhuǎn)過程。我們先放棄“用戶填表→存數(shù)據(jù)庫”的直覺用狀態(tài)機思維錨定業(yè)務主干。2.1 從真實會議場景提煉6類核心角色與權限邊界系統(tǒng)中不存在“萬能管理員”。必須明確劃分以下角色及其操作邊界直接決定后續(xù)Spring Security配置粒度普通員工僅可創(chuàng)建/取消自己發(fā)起的待審核預約查看本人所有預約含歷史不可修改他人預約部門秘書可代本部門員工提交預約可查看本部門全部預約含未審核可撤回本部門待審預約會議室管理員可審核/駁回所有預約可強制釋放超時未使用的預約可維護會議室基礎信息名稱、容量、設備列表超級管理員僅用于初始化系統(tǒng)如創(chuàng)建初始管理員賬號日常不啟用該權限訪客賬號預留擴展僅可查看公開會議室空閑時段不可預約為后續(xù)對接門禁系統(tǒng)留接口系統(tǒng)服務賬號用于定時任務如每日凌晨清理7天前的歷史記錄無Web登錄入口提示角色權限表role_permission必須采用“角色-資源-操作”三元組設計而非簡單字段標記。例如“會議室管理員”對/meeting/approve資源擁有POST操作權限而非在用戶表加is_admin布爾字段——后者會導致權限變更需改代碼且無法支持未來“某管理員僅管3樓會議室”的精細化需求。2.2 會議預約全生命周期狀態(tài)機4個主狀態(tài)7種合法遷移預約單meeting_booking的核心字段status不能用字符串隨意賦值必須嚴格遵循下圖狀態(tài)遷移規(guī)則實際開發(fā)中用枚舉類BookingStatus封裝當前狀態(tài)可遷移到狀態(tài)觸發(fā)動作約束條件DRAFT草稿PENDING_APPROVAL提交預約必須選擇會議室、起止時間、參會人數(shù)時間不能與該會議室已確認預約沖突PENDING_APPROVAL待審核APPROVED/REJECTED/CANCELLED_BY_USER審核通過/駁回/用戶主動取消駁回時reject_reason字段必填用戶取消僅限審核前APPROVED已批準OCCUPIED/CANCELLED_BY_ADMIN/EXPIRED開始使用/管理員強制取消/超時未使用OCCUPIED需校驗當前時間≥預約開始時間EXPIRED由定時任務觸發(fā)超時30分鐘未點擊“開始使用”O(jiān)CCUPIED使用中COMPLETED/CANCELLED_BY_ADMIN結(jié)束會議/管理員強制終止COMPLETED需記錄實際結(jié)束時間用于統(tǒng)計會議室利用率// BookingStatus.java 枚舉定義關鍵部分 public enum BookingStatus { DRAFT(草稿), PENDING_APPROVAL(待審核), APPROVED(已批準), OCCUPIED(使用中), COMPLETED(已完成), REJECTED(已駁回), CANCELLED_BY_USER(用戶取消), CANCELLED_BY_ADMIN(管理員取消), EXPIRED(已過期); private final String desc; // 構(gòu)造、getter省略... // 核心方法校驗狀態(tài)遷移是否合法 public boolean canTransitionTo(BookingStatus target) { switch (this) { case DRAFT: return target PENDING_APPROVAL; case PENDING_APPROVAL: return target APPROVED || target REJECTED || target CANCELLED_BY_USER; case APPROVED: return target OCCUPIED || target CANCELLED_BY_ADMIN || target EXPIRED; case OCCUPIED: return target COMPLETED || target CANCELLED_BY_ADMIN; default: return false; // 其他狀態(tài)禁止遷移 } } }這段代碼的價值在于所有狀態(tài)變更必須調(diào)用canTransitionTo()校驗否則拋出IllegalStateException。它把業(yè)務規(guī)則固化在代碼層避免前端JS或Controller里寫一堆if-else判斷極大降低邏輯錯亂風險。我見過太多項目在“已批準”狀態(tài)下還允許用戶點擊“取消”結(jié)果數(shù)據(jù)庫狀態(tài)變成非法值后續(xù)統(tǒng)計報表全崩。2.3 關鍵約束的落地實現(xiàn)時間沖突檢測與設備匹配算法會議室預約最常被忽略的硬性約束是時間重疊和設備缺失。不能只查“該會議室在[14:00,15:00]是否有預約”而要精確到分鐘級的區(qū)間覆蓋檢測。-- MySQL查詢檢查會議室room_id5在start_time2024-06-15 14:00:00到end_time2024-06-15 15:00:00之間是否存在沖突預約 SELECT COUNT(*) FROM meeting_booking WHERE room_id 5 AND status IN (PENDING_APPROVAL, APPROVED, OCCUPIED) AND NOT ( end_time 2024-06-15 14:00:00 OR -- 新預約在舊預約結(jié)束后開始 start_time 2024-06-15 15:00:00 -- 新預約在舊預約開始前結(jié)束 );設備匹配邏輯放在Service層更合理先查出所有滿足時間要求的會議室再過濾出包含所需設備如投影儀、視頻會議系統(tǒng)的列表。SQL中用FIND_IN_SET(投影儀, equipment_list)雖快但違反第一范式長期維護成本高。推薦在room表增加equipment_ids字段JSON數(shù)組存儲設備ID關聯(lián)equipment字典表通過JOIN實現(xiàn)精準匹配。3. 總體架構(gòu)設計三層結(jié)構(gòu)與四個模塊的職責劃分本系統(tǒng)采用經(jīng)典Java Web分層架構(gòu)但針對預約場景做了關鍵強化將狀態(tài)機引擎獨立為Service模塊DAO層強制事務控制JSP頁面僅負責渲染不摻雜業(yè)務邏輯。避免初學者常見的“JSP里寫Java代碼判斷狀態(tài)”反模式。3.1 分層結(jié)構(gòu)圖與各層核心職責┌─────────────────┐ HTTP/HTTPS ┌──────────────────┐ │ Browser │?─────────────────?│ Tomcat 9 │ └────────┬────────┘ └────────┬─────────┘ │ │ ▼ ▼ ┌─────────────────┐ ┌──────────────────┐ │ JSP Pages │ │ Servlets │ │ (View Layer) │ │ (Controller) │ │ - booking_form.jsp │?───────┐ │ - BookingServlet │ │ - my_bookings.jsp │ │ │ - AdminServlet │ │ - room_calendar.jsp │ └────────?│ - ReportServlet │ └────────┬────────┘ └────────┬─────────┘ │ │ ▼ ▼ ┌───────────────────────────────────────────────────────────────┐ │ Service Layer (Core Logic) │ │ - BookingService: 狀態(tài)遷移、沖突檢測、通知觸發(fā) │ │ - RoomService: 設備匹配、容量校驗、空閑時段計算 │ │ - UserService: 角色權限校驗、部門樹查詢 │ │ - NotificationService: 郵件/站內(nèi)信模板渲染與發(fā)送 │ └───────────────────────────────────────────────────────────────┘ │ ▼ ┌───────────────────────────────────────────────────────────────┐ │ DAO Layer (Data Access) │ │ - BookingDAO: 所有booking操作Transactional標注 │ │ - RoomDAO: 會議室增刪改查含設備關聯(lián)查詢 │ │ - UserDAO: 用戶信息及角色關系查詢 │ │ - LogDAO: 操作日志記錄關鍵用于審計 │ └───────────────────────────────────────────────────────────────┘ │ ▼ ┌───────────────────────────────────────────────────────────────┐ │ Database (MySQL 5.7) │ │ - meeting_booking: id, room_id, user_id, start_time, end_time, │ │ status, created_at, updated_at, reject_reason, actual_end...│ │ - meeting_room: id, name, capacity, equipment_list(JSON), ... │ │ - sys_user: id, username, password, dept_id, role_code, ... │ │ - sys_log: id, operator_id, operation_type, target_id, ... │ └───────────────────────────────────────────────────────────────┘3.2 四大核心模塊詳細設計與接口契約模塊一預約管理模塊Booking Module核心接口BookingService.createBooking(BookingRequest request)關鍵設計點BookingRequest對象必須包含roomId,startTime,endTime,userId,requiredEquipmentIds(List )禁止傳入原始字符串參數(shù)創(chuàng)建前調(diào)用RoomService.checkAvailabilityAndEquipment(roomId, startTime, endTime, requiredEquipmentIds)該方法內(nèi)部執(zhí)行SQL時間沖突檢測設備匹配狀態(tài)初始化為DRAFT僅當用戶點擊“提交審核”才調(diào)用BookingService.submitForApproval(bookingId)此時狀態(tài)變更為PENDING_APPROVAL所有狀態(tài)變更操作approve/reject/cancel均在BookingService中完成Controller絕不直接更新status字段模塊二會議室資源模塊Room Module核心接口RoomService.getAvailableRooms(LocalDateTime start, LocalDateTime end, ListLong equipmentIds)關鍵設計點返回ListRoomWithAvailability其中RoomWithAvailability包含會議室基本信息該時段是否可用true/false沖突預約數(shù)用于前端提示“該時段已被預約X次”空閑時段計算不依賴復雜SQL而是用Java Stream處理查出該會議室所有APPROVED/OCCUPIED狀態(tài)的預約生成LocalDateTime[]數(shù)組表示占用區(qū)間再與請求時段做差集運算設備匹配采用IN子查詢SELECT r.* FROM meeting_room r JOIN room_equipment re ON r.idre.room_id WHERE re.equipment_id IN (1,3,5) GROUP BY r.id HAVING COUNT(DISTINCT re.equipment_id)3模塊三權限與角色模塊Auth Module技術選型Spring Security 5.7 自定義UserDetailsService關鍵設計點權限表達式使用PreAuthorize(hasRole(ROOM_ADMIN) or #booking.userId principal.id)控制方法級訪問角色數(shù)據(jù)從數(shù)據(jù)庫加載不硬編碼。SysUser實體中roleCode字段對應sys_role表的code如ROOM_ADMIN登錄成功后SecurityContext中存入CustomUserDetails對象包含username,deptName,roleCode,permissions(List )JSP頁面用sec:authorize accesshasRole(ROOM_ADMIN)控制按鈕顯示禁止用EL表達式${user.role admin}模塊四通知與日志模塊Notification Audit Module核心設計解耦通知渠道日志強制記錄關鍵設計點NotificationService.send(NotifyRequest request)接收統(tǒng)一請求對象內(nèi)部根據(jù)request.channelEMAIL/SYSTEM調(diào)用不同實現(xiàn)站內(nèi)信模板存于notify_template表template_codeBOOKING_APPROVED對應審批通過模板支持{userName},{roomName}等占位符所有狀態(tài)變更、關鍵操作如管理員強制取消必須調(diào)用LogDAO.insertLog(...)記錄字段包括operatorId,operationType(BOOKING_APPROVE),targetId(預約ID),details(JSON格式含原狀態(tài)/新狀態(tài)/操作人IP)4. 關鍵模塊實現(xiàn)與避坑指南5條血淚經(jīng)驗總結(jié)這部分是真正讓你避開答辯雷區(qū)的干貨。下面列出我在多個項目中反復驗證過的高頻翻車點每條都按“現(xiàn)象→原因→解決”結(jié)構(gòu)給出可立即執(zhí)行的方案。4.1 并發(fā)預約沖突兩個用戶同時預約同一時段數(shù)據(jù)庫存了兩條記錄現(xiàn)象測試時兩人幾乎同時點擊“提交審核”后臺日志顯示兩條INSERT INTO meeting_booking成功但會議室實際只能容納一場會議。原因時間沖突檢測checkAvailabilityAndEquipment和插入預約insertBooking是兩個獨立數(shù)據(jù)庫操作中間存在時間窗口。即使加了TransactionalMySQL默認隔離級別REPEATABLE READ也無法阻止幻讀。解決在BookingDAO.insertBooking()方法上添加數(shù)據(jù)庫唯一索引強制約束-- 在meeting_booking表上創(chuàng)建復合唯一索引防止同一會議室在同一時段出現(xiàn)多條非取消狀態(tài)記錄 CREATE UNIQUE INDEX uk_room_time_status ON meeting_booking (room_id, DATE(start_time), HOUR(start_time), status) WHERE status IN (PENDING_APPROVAL, APPROVED, OCCUPIED);注意MySQL 8.0才支持函數(shù)索引和WHERE條件索引。若用低版本改用start_dateDATE類型和time_slotTINYINT如14表示14:00-15:00兩個字段組合唯一索引。4.2 狀態(tài)機失控用戶在“已批準”狀態(tài)仍能點擊“取消預約”按鈕現(xiàn)象JSP頁面未根據(jù)booking.status動態(tài)控制按鈕可見性導致用戶看到“取消”按鈕并點擊后端未校驗狀態(tài)直接執(zhí)行取消邏輯造成狀態(tài)非法如APPROVED→CANCELLED_BY_USER。原因前端控制JSP EL表達式和后端校驗Service方法脫節(jié)。常見錯誤是Controller里只校驗userId不校驗status。解決雙重校驗。JSP中c:if test${booking.status DRAFT || booking.status PENDING_APPROVAL} a hrefbooking?opcancelid${booking.id}取消預約/a /c:ifService中cancelBooking(Long bookingId, Long userId)方法開頭必須加Booking booking bookingDAO.findById(bookingId); if (!booking.getStatus().canTransitionTo(BookingStatus.CANCELLED_BY_USER)) { throw new BusinessException(當前狀態(tài)不允許取消 booking.getStatus().getDesc()); }4.3 時間顯示時區(qū)混亂用戶在北京提交14:00預約數(shù)據(jù)庫存成06:00現(xiàn)象前端JSP用fmt:formatDate value${booking.startTime} patternyyyy-MM-dd HH:mm/顯示正常但數(shù)據(jù)庫里start_time字段值比預期早8小時。原因MySQL服務器時區(qū)為UTC而Java應用未指定時區(qū)SimpleDateFormat或JDBC驅(qū)動默認用系統(tǒng)時區(qū)可能為CST導致時間解析錯亂。解決三處統(tǒng)一設置為Asia/ShanghaiMySQL啟動參數(shù)default-time-zone08:00JDBC連接URLjdbc:mysql://localhost:3306/meeting?serverTimezoneAsia/ShanghaiuseUnicodetruecharacterEncodingUTF-8Java代碼中所有日期操作用LocalDateTime無時區(qū)ZoneId.of(Asia/Shanghai)轉(zhuǎn)換禁用Date和Calendar4.4 權限繞過未登錄用戶直接訪問/admin/approve.jsp頁面現(xiàn)象在瀏覽器地址欄輸入http://localhost:8080/admin/approve.jsp頁面直接打開無任何攔截。原因Spring Security配置中只保護了/admin/**路徑下的Servlet如/admin/approve但未保護.jsp后綴的靜態(tài)資源。解決在WebSecurityConfigurerAdapter中顯式配置Override protected void configure(HttpSecurity http) throws Exception { http .authorizeRequests() .antMatchers(/admin/**).hasRole(ROOM_ADMIN) .antMatchers(/**/*.jsp).denyAll() // 拒絕所有JSP直接訪問 .antMatchers(/css/**, /js/**, /images/**).permitAll() .anyRequest().authenticated(); // ...其他配置 }同時確保web.xml中servlet-mapping不將.jsp映射給Spring DispatcherServlet保持JSP由容器原生處理。4.5 日志缺失管理員駁回預約后找不到誰在何時駁回及理由現(xiàn)象用戶投訴“我的預約被駁回了但沒收到通知”管理員堅稱“我沒操作”無證據(jù)追溯。原因駁回操作只更新了meeting_booking.status和reject_reason未記錄操作人、時間、IP等審計信息。解決在BookingService.rejectBooking(Long bookingId, Long adminId, String reason)方法中必須調(diào)用日志服務// 記錄駁回操作日志 Log log new Log(); log.setOperatorId(adminId); log.setOperationType(BOOKING_REJECT); log.setTargetId(bookingId); log.setDetails(JsonUtil.toJsonMap(Map.of( oldStatus, booking.getStatus().name(), newStatus, BookingStatus.REJECTED.name(), reason, reason, clientIp, getClientIp(request) // 從HttpServletRequest獲取 ))); logDAO.insertLog(log); // 再執(zhí)行駁回業(yè)務邏輯 booking.setStatus(BookingStatus.REJECTED); booking.setRejectReason(reason); bookingDAO.update(booking);5. 前端交互與用戶體驗優(yōu)化讓系統(tǒng)不只是能用還要好答很多同學花90%精力在后端卻在答辯時被導師一句“這個界面怎么沒有預約成功提示”問懵。前端不是點綴而是業(yè)務閉環(huán)的關鍵一環(huán)。這里聚焦三個最影響答辯觀感的點實時狀態(tài)反饋、空閑時段可視化、移動端適配。5.1 預約流程的漸進式狀態(tài)反饋告別“白屏等待”JSP頁面不能只靠response.sendRedirect()跳轉(zhuǎn)必須給用戶明確的進度感知。以提交預約為例!-- booking_form.jsp 中的提交按鈕 -- button typebutton onclicksubmitBooking() idsubmitBtn span idbtnText提交審核/span span idloadingIcon classd-none?/span /button script function submitBooking() { const btn document.getElementById(submitBtn); const text document.getElementById(btnText); const icon document.getElementById(loadingIcon); // 1. 按鈕置灰顯示加載中 btn.disabled true; text.classList.add(d-none); icon.classList.remove(d-none); // 2. 發(fā)送AJAX請求 fetch(booking?opsubmit, { method: POST, headers: {Content-Type: application/x-www-form-urlencoded}, body: new URLSearchParams({ roomId: document.getElementById(roomId).value, startTime: document.getElementById(startTime).value, endTime: document.getElementById(endTime).value }) }) .then(response response.json()) .then(data { if (data.success) { // 3. 成功顯示Toast并跳轉(zhuǎn) showToast(預約已提交等待審核, success); setTimeout(() window.location.href my_bookings.jsp, 1500); } else { // 4. 失敗恢復按鈕顯示錯誤 btn.disabled false; text.classList.remove(d-none); icon.classList.add(d-none); showToast(提交失敗 data.message, error); } }) .catch(err { btn.disabled false; text.classList.remove(d-none); icon.classList.add(d-none); showToast(網(wǎng)絡錯誤請重試, error); }); } /script這段代碼的價值在于用戶永遠知道系統(tǒng)在做什么。答辯時導師點擊按鈕看到按鈕變灰、出現(xiàn)?圖標、1.5秒后跳轉(zhuǎn)會直觀感受到“流程嚴謹”。而如果只是form actionbooking?opsubmit提交后白屏2秒體驗感直接扣分。5.2 會議室空閑時段日歷視圖用純CSS實現(xiàn)響應式網(wǎng)格避免引入jQuery UI或FullCalendar等重型庫。用Bootstrap Grid 簡單CSS即可實現(xiàn)清晰的日程表!-- room_calendar.jsp 核心HTML -- div classrow div classcol-2 font-weight-bold時間/div c:forEach items${rooms} varroom div classcol-2 font-weight-bold${room.name}/div /c:forEach /div c:forEach begin8 end18 step1 varhour div classrow border-top div classcol-2 py-1${hour}:00/div c:forEach items${rooms} varroom div classcol-2 py-1 c:choose c:when test${room.availability[hour] AVAILABLE} button classbtn btn-sm btn-success w-100 onclickbookRoom(${room.id}, ${hour}:00, ${hour1}:00) ? 空閑 /button /c:when c:otherwise span classtext-muted small? 占用/span /c:otherwise /c:choose /div /c:forEach /div /c:forEach/* room_calendar.css */ .btn-success { background-color: #28a745 !important; border-color: #218838 !important; } .btn-success:hover { background-color: #218838 !important; }這個設計的優(yōu)勢是零JS依賴純服務端渲染。room.availability是MapInteger, Stringkey為小時8-18value為AVAILABLE/OCCUPIED。數(shù)據(jù)在Controller中已計算好JSP只做展示。答辯演示時導師拖動瀏覽器寬度網(wǎng)格自動從4列變?yōu)?列會立刻感受到“移動端友好”。5.3 移動端適配關鍵點表單與列表的觸控優(yōu)化JSP頁面默認在手機上體驗極差。只需三處修改就能讓導師在手機上流暢操作強制視口縮放在head中加入meta nameviewport contentwidthdevice-width, initial-scale1, maximum-scale1, user-scalableno表單控件增大點擊區(qū)域所有input、select、button添加CSSinput, select, button { min-height: 44px; /* iOS最小觸控區(qū)域 */ padding: 10px; font-size: 16px; }列表項增加分割線與間距my_bookings.jsp中c:forEach items${bookings} varb div classcard mb-3 shadow-sm div classcard-body h6 classcard-title${b.roomName} · ${b.startTimeStr} - ${b.endTimeStr}/h6 p classcard-text span classbadge badge-${b.statusBadge}${b.statusDesc}/span br參會人${b.participantCount}人 /p /div /div /c:forEachbadge-${b.statusBadge}對應CSS類.badge-success已批準、.badge-warning待審核等顏色區(qū)分一目了然。答辯時導師用手機點開你的系統(tǒng)看到卡片式布局、醒目的狀態(tài)標簽、足夠大的按鈕會認為“這學生考慮到了真實使用場景”。6. 答辯驗收與交付檢查用這7個問題自測系統(tǒng)完整性答辯不是背誦代碼而是證明你構(gòu)建了一個可運行、可驗證、可維護的系統(tǒng)。我每次指導學生前都會讓他們對著這份清單逐項打鉤。只要7項全過答辯通過率接近100%。這不是玄學是把抽象的“系統(tǒng)完成度”轉(zhuǎn)化成可執(zhí)行的檢查項。6.1 功能性驗收7個必答問題清單序號問題檢查方式通過標準我的血淚經(jīng)驗1能否用普通員工賬號預約一間會議室并在1分鐘內(nèi)被會議室管理員審核通過實際操作A賬號預約→B賬號登錄審核→刷新A賬號頁面A賬號“我的預約”中狀態(tài)變?yōu)椤耙雅鷾省鼻褺賬號操作日志有記錄曾有學生忘記在BookingService.approve()中調(diào)用NotificationService.send()導致用戶收不到通知答辯時導師故意等2分鐘說“怎么沒提示”當場扣分2兩個用戶同時預約同一會議室同一時段是否只有一人成功另一人是否收到明確提示并發(fā)測試用Chrome和Firefox同時提交相同預約數(shù)據(jù)庫meeting_booking表只新增1條記錄失敗方頁面顯示“該時段已被預約請選擇其他時間”不做并發(fā)測試是最大盲區(qū)。用Postman發(fā)兩個POST請求比手動點更快10秒搞定3管理員駁回預約時是否強制填寫駁回理由理由是否存入數(shù)據(jù)庫并顯示在用戶端操作管理員駁回時不填理由→點擊確定頁面彈出JS警告“駁回理由不能為空”填入理由后用戶端“我的預約”詳情頁顯示該理由很多同學只在數(shù)據(jù)庫加了reject_reason字段但沒在JSP表單加required屬性也沒在Service層校驗非空屬于典型“半成品”4修改密碼后原Session是否立即失效能否用舊密碼登錄操作A賬號登錄→修改密碼→用舊密碼嘗試登錄舊密碼登錄失敗提示“用戶名或密碼錯誤”新密碼可登錄Session管理常被忽視。必須在UserService.changePassword()中調(diào)用SecurityContextHolder.getContext().setAuthentication(null)并清空HttpSession5查看“會議室使用率報表”時是否顯示近7天每間會議室的使用小時數(shù)數(shù)據(jù)是否準確操作進入報表頁核對數(shù)據(jù)庫meeting_booking中statusCOMPLETED的記錄報表數(shù)字 SUM(actual_end_time-start_time)單位為小時四舍五入到小數(shù)點后1位報表SQL別寫COUNT(*)那是預約次數(shù)不是使用時長。必須用TIMESTAMPDIFF(HOUR, start_time, actual_end_time)6在手機瀏覽器訪問預約表單能否正常填寫按鈕是否足夠大頁面是否橫向滾動真機測試用iPhone Safari打開系統(tǒng)表單控件可點擊無橫向滾動條文字清晰可讀切忌用Chrome模擬器真機測試10分鐘能發(fā)現(xiàn)90%的移動端問題7刪除一條已“使用中”的預約系統(tǒng)是否拒絕并提示“會議正在進行中不可刪除”操作將預約狀態(tài)設為OCCUPIED→嘗試刪除頁面提示明確錯誤數(shù)據(jù)庫記錄未刪除操作日志記錄“DELETE_FAILED”狀態(tài)機校驗必須覆蓋所有非法遷移。BookingService.deleteBooking()開頭第一行就應是if (booking.getStatus() OCCUPIED) throw ...6.2 文檔與代碼規(guī)范答辯官最易抓的細節(jié)除了功能文檔質(zhì)量直接暴露你的工程素養(yǎng)。我要求學生必須提供以下三份文檔缺一不可《數(shù)據(jù)庫設計說明書》PDF包含ER圖用draw.io畫、每張表的字段說明含NOT NULL、INDEX、FOREIGN KEY標注、關鍵索引解釋如uk_room_time_status為何要加WHERE條件。不要截圖Navicat要手繪ER圖——這證明你理解了關系。《部署手冊》TXT精確到每一步命令例如# 1. 導入數(shù)據(jù)庫 mysql -u root -p meeting meeting_schema.sql # 2. 修改Tomcat配置 編輯 conf/server.xml將Connector port8080 改為 port8081 # 3. 啟動應用 ./bin/startup.sh不寫“配置好數(shù)據(jù)庫連接”這種廢話要寫出具體改哪行、填什么值。《源碼注釋覆蓋率報告》HTML用JaCoCo生成要求BookingService.java等核心類注釋覆蓋率≥80%。注釋不是寫// 設置用戶ID而是// 校驗狀態(tài)機僅DRAFT/PENDING_APPROVAL狀態(tài)允許取消防止非法狀態(tài)遷移。從那以后我每次帶學生做畢設都強制他們在寫第一行代碼前先用Word畫出狀態(tài)機圖、用draw.io畫出ER圖、用記事本寫下部署步驟。不是為了交差而是讓大腦先建立完整的系統(tǒng)骨架再往里填肉。骨架歪了代碼寫得再漂亮也是危房。希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
一区二区三| 在线播放成人网站| AV天堂电影网| 中文字幕一区二区视频在线观看| 狠狠干狠狠色| 狠狠干妹子| 久色99999| 九热中文字幕| 国产综合在线视频网站| 一区二区三区成人| 免费的黄片wwwwww| 97视频新免费| 欧美日韩性爱操大逼| 亚洲三级网址久久最新| 国产91影院| 国产少妇与亚洲av| 在线视频 亚洲精品| 日日干夜夜干| 精品亚洲天堂| 日韩AV中文字幕电影| 91色狼| 国模吧 一区二区三区| 亚洲国产青青| 激情九月婷婷| 91色香| 午夜超爽| 久久精品99久久久久久| 亚洲无码电影久久久| 五月天激情婷婷| 插插综合网天天影视网| 探花激情视频| 上床啊啊啊| 女人高潮抽搐喷水视频网站| 精品无码一区二区三区| 日韩999| 少妇激情一区二区三区视频| 骚逼高潮久久精品| 日韩性爱啪啪视频| 男人网站婷婷| 激情网五月天| 亚洲无992tv| 白丝1区2区3区| 久久精品日韩| 97se亚洲综合自| 久热免费视频| 97色色色| 欧洲与亚洲欧美精品中文字幕| 青娱乐999| 五月天色图| 超碰国产精品无码| 久久久91福利姬| 中文字幕av乱伦| 男人的天堂va在线| 亚洲瓯美色图| 国产少妇肉丝在线观看| 狠狠色伊人亚洲综合网站色| 中文字幕AV片| 九九热精品| 亚洲视频中文一区| 亚洲不卡不卡中文字幕不卡| 天堂无码精品国产久| 女上位精品在线| 另类天堂| 人妻少妇被猛烈进入中| 亚洲丝袜在线观看| 亚洲男人的天堂AV| 激情五月综合| 在线看的av| 大香蕉2017| 日本 欧美 亚中文字幕| 欧洲亚洲国产综合在线| 狠狠干91| 亚洲在线综合| 75大香蕉| 久久国产三区| 久久免费精品视频免一| 国产女s强制榨精视频| 涩涩久久精品| 伊人成人中文字幕久久网| a片久久久久久久久久久久| 欧美白嫩在线放| 一块操欧美| 成人无遮挡毛片免费看| 亚洲无码日韩电影| 伦理弟一页| 久久男人的天堂国产| 国产精品黑人一区二区三区| 97久操| 爆乳免费黄网站| 人人透人人操| 色成人Www精品永久观看| 夜夜欢天天干| 亚洲色图片区| 热G综合热G中文| 91在线限制级| 久操在97| 国产有码一区| 午夜精品99久久久久传媒| 精品人妻一区二区视频| av网站免费看| 欧美日韩国产成人高清| 蜜臀久久99精品久久久久久酒店| 超碰天天去日穴| 国产SV一线| 成片免费观看视频大全| 日本日皮视频逼| 岛国在线免费视频| 强奸乱伦AV一天堂网| 国产乱码久久久| 青操影院| 欧美色图在线视频少妇| 久草在| 91美腿丝袜在线观看| 日本 欧美 亚中文字幕| 精品久久在线区一区| 激情小说成人日本无码一| 中文字幕精品免费一区二区| 亚洲欧美电影| 日韩亚洲欧美中文字幕| 中文字幕在线观看网址| 国产精品香蕉| 色色九区| 国产97亚洲| 欧美综合色| 抽插一区二区视频| 激情综合 婷婷五月 红杏| 97精品国产精品免费观看| 中文字幕片| 9色在线| 综合色播| 一区二区三区精品黑丝白丝酒店对鸡 | 精品国产人成在线| 人人摸人人摸人人干| 嗯啊视频免费在线观看| 日本操逼视频导航| 嫩草影院在线观看精品| 婷婷综合在线| 1024久久高清视频| 91欧美巨乳| 亚洲青青草| 蜜臀va69| 麻豆久久精品亚洲精品88| 久久精品国产亚洲AV清纯| 中文字幕乱码在线| 欧美日韩黄片精品在线| 99久久精品国产高潮| 日韩成人电影AV| 少妇 综合| 91亚洲不卡一区| 裸体女人草逼视频播放一区,二区,三区,四区,五区| 亚洲丝袜色图| 少妇熟女视频一二三区| 九九热九九| 日产欧美电影一区二区三区| 亚洲色色探花| 久久一二三四五六七八九区区区| 欧美天天谢综合网| 十八禁一区二区无码观看| 中文精品少妇天堂| 亚洲av噜噜噜噜噜噜| 欧美综合国产精品久久丁香| 国产强奸超碰AV| 婷婷五月天综合网| 欧美日韩精品国产91| 青青欧洲黑| 日本97久久| 欧差乱伦二三| 婷婷五月天AV| 好舒服视频| 美女91在线| A 在线网址| 国产在线精品偷| GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 日韩97P| 99久久婷婷丁香| 99ri精品| 亚洲s色图| 婷婷操视频| 97久久超碰| 久久综合久久综合人久久夜精品| 男人天堂无码| 一本一道波多野毛片中文在线| 99热超碰在线| 色亚州人久干视频在线观看免费版| 亚洲丝袜少妇在线| 温婉少妇玩3p| 欧美日韩一干二干| 国内毛片欧美香蕉精品| 99精品久久久久久久婷婷蜜桃| 狠狠久久四虎| 天美传媒精品一区二区| 色五月综合网| 日本高清视频在线观看黄已三辽| 最新av网站在线观看| 午夜爽爽爽在线观看永久入口姬片| 激情开心五月天| 69丨亚洲丨精品丨入口免费播放| 370p日韩欧美亚洲精品| 中文字幕超碰CAO| 国产美女高潮| 首页亚洲国产高跟丝袜诱惑视频 | 伦激情人妻另类人妻| 日本三级韩国三级99| 国产中午字一暮区| 亚洲一卡二卡在线免费| 人妻美腿丝袜制服诱惑综合天堂-| 久久精品国产亚洲粉嫩| 婷婷五月天在线观看| 精品综合久久久久久97| 成人免费福利网站国产| 天天日美女的B| 久草视频观看视频在线| 91色堂| 国产h片在线观看视频| 97久久超碰国产网站| 野狼福利社区| 日韩成人色图| 你懂的在线观看区国产| 日本精品国产视频| 成人八戒网站| 哑洲在线| 九色PORNY9l原创自拍| 2020中文字幕在线| 99色婷婷| 精品在线蜜臀| 久久精品免费| 嫩草美女久久| A男人的天堂| 亚洲精品影视老司机| 狠操91,com| 中国AV美女| 啊啊啊啊在线观看网址| 亚洲 国产 精品一区| 久久精品成人一区二区三区蜜臀| 色九区| 91丝袜美女视频| 国产一区二区三区精品观看啪| 日日AAvv| 91大胆欧美| 秋霞一集毛片观看| 91强在线播放| 亚洲人妻一区二区三区| 91少妇人妻| 1234区中文字幕在线观看_青青草国产在线_日韩一区二区 | 蜜乳AV一区二区三区四| 亚洲精品人体| 久欲AV| 久久99操天天日| 97Ai亚洲| 9999久久久久| 中文啪啪视频| 99视频自拍| 91在线视频国产网站| 校园春色宗合网| 日韩欧美亚洲一区二区三区影院| 国产色图乱伦| 999久久芭蕾| 欧美男人一区| 日本精品高清一二区一本到| 啊啊啊想要| 97精品在线| 天天日少妇逼AV| 亚洲欧美在线观看无码| 97亚洲色图| 97se综合网| 日本黄 R色 成 人网站| 日韩av不卡在线看| 97干在线| 91日韩网站| 精品久久久久黄少妇| 精品亚洲国产成人AV制服丝袜 | 精品无人区麻豆乱码1区2区图片| 欧美狠狠弄| 国产精品午夜高潮呻吟久久av| 亚洲性网| 亚洲色图欧美色图制服诱惑| 久久国产精品91| 91黑人无码激情在线| 影音先锋每日最新资源在线观看| 人妻美腿丝袜日韩| 奸色色 男人天堂 天天射| 人人看人人插| 五码视频在线观看| 国产精品久久久久久高清无码免费看| 天天综合网网欲色| 风韵犹存大大大大香蕉| 91女优在线观看| 最新亚洲风情电影| 北条麻妃99精品青青久久| 999国产精品999| 最新av中文字幕高清| 91熟女视频| 蜜臀久久99精品久久久久久酒店| 清纯唯美亚洲综合| 国产h小视频在线观看免费| 日本大香蕉综合网| 在线中文AV| 夜夜综合| 品亲网欧美品亲网| 香蕉一区二区三区在线视频| 五月丁香色情| 高清在线偷拍自拍视频| 欧美性爱一级操| 国产日韩精品人妻久久久久色欲网站| 在线播放成人高清免费视频 | 精品美女在线视频| 亚洲乱色视频一区、二区在线| 日韩啪啪网| 不卡啪啪视频| 日韩成人精品中文字幕| 99色在线视频| 婷婷丁香五月综合| 亚殴在线| 超碰成人免费| 日韩不卡毛片Av免费高清| 狼狼色丁香久久婷婷综合五月| 国产无马在线| 亚洲成aⅴ人片不卡无码| 日本性交操一区二区不卡系列| 91丝袜在线观看| 日本综合色图| Av手机版天堂网| 亚洲免费成人在线高清无码视频 | 亚洲色图 91| 92大香蕉| 久草在线| 久久欲| 天天干干天天干干| 国产三级日产三级韩国三级 | 亚洲自拍偷拍视频在线| 97干97色| 亚洲小电影免费涩涩成人在线高清| 久久无码成人| 亚洲精品男人的天堂| 五月天色综合| 欧美综合第一| 超碰综合97在线| 色九久| 天天影视色香欲综合网小说| 亚洲AV秘 精品久久老牛影视| 99久久久er直播网址| 97人人模人人爽人人| 精品久久人妻成人网| 男人兔费天堂| 成人精品一区二区三区| 日本幼女18+| 精品午夜福利导航| 欧美综合区| 国内精品999| 免费网站观看www在线观| 亚洲综合草草| 熟妇人妻精品一区二区| 黑人美精品 A片| 五月婷婷激情网| 高清不卡一二三区视频......| 亚洲熟女乱熟乱熟妇综合网二区| 综合网少妇| 一级性爱视频免费观看| 无码少妇精品一区二区60岁老人| 夜夜操狠狠操| 综合网亚| 久久伊人影院| 色呦呦呦在线观看视频| 九九九久千久久激情蜜桃在线看 | 香蕉综合网| 伊人久久大香蕉线AV五月天| 一区二区亚州激情久婷婷欧美| 97天天| 无码操逼网| 精品少妇一区二区三区免费观看| 亚洲天堂资源| www久久国产精品| 日韩精品一区二区三区色欲| 四虎国产成人精品免费一女五男| 天天92av| 亚洲最大AV网| 99亚洲人人| 9久精品| 国产又操| 超碰偷拍| 国产1769在线| 色天堂在线观看| 人人搞人人插人人操| 不卡啪啪视频| 欧洲乱码视频| 欧美成人性爱视频在线播放| 日韩人妻精品久久久久| 香港久久久| 不卡一区二区日本视频| 亚洲吊色| 国产一区二区免费福利片| 精品国产久热在线观看| 夜夜免费视频| 麻花传媒免费网站在线观看| 人妻人人澡人人爽人人| 91AV入口| 国产原创自拍| 99热99在线播放激情| 久伊人网78| 欧美亚洲高清不卡| 日韩欧视频| 亚洲欧美国产日本一区二区三区| 九九九精品一区二区无码| 日韩精品中文字幕人妻| 人人色人人射人人妻| 男人久久天堂| 人妻一区二区三区| 国产精品福利资源在线尤物| 欧美亚洲综合色| 婷婷国产精品一区二区| 999久久久精品国产| 蜜桃久久一区| 操穴国产| 操操逼操操逼操操逼逼| 欧亚三区动漫| 久久熟妇五十路一区| h4610国产人妻| 999国产精品999久久久久久| 亚洲人在线成线成人| 最新亚洲人成网站在线影院| 91精品人妻五十路| 爱爱动态120秒| 男人女人18禁片免费看网站| 男人天堂网手机版婷婷| 婷婷香蕉欧美在线一区二区三区| 婷婷av在线中文字幕| 色踪合AV| av婷婷色网| 日韩精品人妻一| 97久久久网站| 亚州 综合 色图| 探花精品视频| 两女互慰AV高潮喷水在线观看| 婷婷九月国产| 欧美 亚洲 大香| 操逼日韩无码 | 少妇精品久久久| 色色色欧美| 精品国产av一区二区三区四区入口| 亚洲无限观看| 久久黄色网址| 久久久成人国产精品无码| 亚洲福利影院一区久久| 91青青在线视频| 久久最新免费视频23| 日本操逼视频导航| 无码外流操逼视频| 天天干18禁| 久久精品视| 国产黄色动态精品| 日韩AV电影网站| 老司机老司机午夜影院| 被男人添B超爽视频| 中文字幕乱码在线| 亚洲天堂一二| 久久久久久久久国产| 一个人在线看的黄色电影网站| 亚洲成A∨人影院在线欢看| 亚洲欧美高清无码| 丁香九月婷婷| 欧洲视频在线| 天天综合,91入口| 天天综合网1| 德国一二三不卡| 伊人AAA| 婷婷AV一区二区三区| 制度丝袜99| 免费家庭乱伦视频| 三上悠亚在线毛片91| 女人香蕉久久毛毛片精品| 97视频在线免费播放| 青青草伊人久久| 91n美女视频| 久久人妻办公室视频| 青青操狠狠撩| 婷婷亚洲综合| 国产激情久久久| 日本道久久综合色色| 久操网线| 亚洲乱码国产乱码精网站| 中文字幕日韩电影人妻| 国产探花日韩援交| 国产精品久久久久久久电影渣男| 色综合V| 偷拍 欧美 日韩| 2023天天操夜夜操| 一级性爱视频免费在线| AV麻豆免费一区| 超碰精品国产无码| 波多野结衣AV无码一区| 欧美日韩*字幕一区| 国产精品精品系列在线观看| 精品人妻1237| 9热9热综合网| 好舒服视频| 97久久国产亚洲精品超碰热| 人妻喷水| 亚洲不雅视频1区二区| 亚洲91色| 国产男女边吃边摸视频网站| 一级特黄aaa大片在线观看成人一级片在线观看| 蜜臀无码视频在线观看| 日本精品网站在线中文| 福利在线观看一区二区| 97福利视频| 久操99| 91激情网| 99rre在线精品99re8| 亚洲毛片久久| 天天干天天舔| 最新国产亚洲精品精品国产亚洲综合| 丁香五月电影| 久久e6只有精品| 亚av顶级裸体一区二区三区四区五区 | 亚洲AV无线| 婷婷久久综合久| 国产性感骚丝袜在线| 九九九影院| 深夜激情 | 久久久久久久六六| 欧美日韩小说| 欧洲黄色网| 久久久久亚洲Aⅴ无码| 91视频国品一二三区| 亚洲精品天天影视综合网 | 国产不良强奸视频免费看| 在线看片国产精品每日更新| caorenqi shipin| 欧美激情久| 日韩性色| 另类 日韩 熟女| 乱精品一区字幕二区| 91美女视频在线| 欧美韩日精品99综合| 国产高清午夜成人在线观看| 国产呦精品一区二区三区下载| 91男女啊啊啊| 精品大全99999| 午夜啪| 91久久久久久| 97超碰超欧美。| 99人妻| 免費黃色視頻觀看一| 国产精品亚洲四五区在线观看| 日韩在线观看AV| 另类TS人妖一区二区三区 | 国产精点久久久成人| 不卡码视频| 96超碰网| 天天色播亚洲综合网站| 美日韩在线不卡人妻| 夜夜爽夜夜爽| 久热9| 久操影视| 95自拍视频在线观看| 色综合中文字幕不卡| av2014 日韩在线中文字幕| 日本熟女免费視颖| 久久婷婷国产一区二区色| nuu12国产麻豆精品| 欧美一区二区福利在线| 天天综合有色网| 91性片| 91色久| 黑人性暴力毛片| 大香蕉免费乱伦视频| 色婷婷久久综合超碰| 色图综合网| 一色网男人的天堂| 97综合国产| 91黑丝在线播放| 超碰诱惑| 婷婷久草一区二区三区| 亚洲一区二区AV| 欧美亚洲日韩人妻在线观看| 78操B| 极品色社| 激情综合网激情综合| 天天日老熟妇| av毛片aaaaa免费看| 97色插| 国产在线综合福利网站| 成人女人国产| 久久久久久亚洲中文| 久草在| 青草青草久热| 超碰97人妻自拍| 大香蕉免费中文| 精品国产Av无码久久久伦古装| 亚码激情| 亚洲国产成人7777| 老熟妇一区二区三区啪啪| 岛国网址国产 | 香蕉色网| 色五月综合| 超碰美国| 熟女天天干| 人人插人人摸人人| 97久久超碰日韩精品| 啊啊啊操一区| 操操逼视频| 国产后入清纯| 欧美一级三级| AV一起草在线| 97射欧美| 精精夜夜| 久久精品毛片免费不卡| 欧洲亚洲人妻无码久久三区四区| 亚洲麻豆精品二区三区| 亚洲男人综合| 超碰在线综合97| 麻豆天美国美国产| 老司机深夜影院18未满| 人人妻人人澡人人爽久久av| 99天天超碰| 亚洲四虎熟女精品| 91啦人妻| 亚洲欧美激情小说| 天天综合网91入口| 性爱av在线免费观看| 少妇久久久久久久| 韩国毛片一区二区三区| 天天干2019| 中国国国产一级特黄毛片| 婷婷爽人人婷婷爽视频| 久久久久9999精品九九九| 成功精品影院| 麻花传媒免费网站在线观看| 综合久久9| 99国产精品自在自在| 97国产精品国| 亚洲av无码成人精品国产| 天天干天天舔| 久久综合97| 青青操视频在线| 精品福利视频| 五月丁香激情综合| 夜夜影视四色| 色综合V| 超碰97中文| 日韩特一级久久| 欧美另类自拍| 18精品一区| 99久久久99久久91熟女| 日韩精品中文字幕一| 富女玩鸭子一级毛片| 欧美成97爱| 青青操视频在线| 国产精品视频播放| 日韩内射视频| 中文字幕在线观看丝袜| 人人插人人搞人人操| 911av网站免费观看| 国产精品白领在线观看| 91欧美网| 精品日韩产品在线,日韩在线不卡视频,欧美日韩免费专区/久, | 中文乱码字字幕在线第5页| 欧美性高潮| 久久女女| 人人九九精| 91精品国产乱码| 久9久9精品| 91美女在线视频| 久久九九一区二区三区成人| 精品四五区| 97亚洲性爱| 青青草原人妻| 天天淫人人妻日日色| 国产后入精品| 欧美精品成人亚洲| 久久99黄色卞西瓜| 欧美九九爱| 久久综合乱子伦国产免费| 亚洲色图在线视频| 精品.99999| 亚洲人在线| 欧美日韩精品国产91| 男生女生啊啊啊啊| 九九九九九九九九九五码| 黑丝日韩av丝袜av| 九九国产热| 黄色一区三区| 99热这里只有精品1| 99热精品在线观看| 久久内射| 无码国产精品96久久久久孕妇| 大香蕉伊人网| 中文字幕人妻资源在线| 性videos欧美熟妇hdx| 五月丁香六月综合缴清无码| 久久亚州精品成人Av无| 国产一区二区a毛片| 另类 日韩 熟女| 午夜天堂啪啪| 久久欧美按摩999| 伊人青青一区成人视频在线观看区| 日韩影片中文字幕一区二区三区| 亚洲精品欧洲精品| 欧美在线 亚洲| 色婷婷日韩精品一区二区三区| 大香蕉中文网| 搡老熟女免费视频| 强奸国产在线| 99操碰| 人妻天天爽夜夜爽爽| 性性欧美| 精品美女少妇一区二区| 蜜臀久久99精品久久久久久-DVD原版全| 神马久久午夜| 人人操人人操人人人操| 激情久久久| 亚洲人精品久久久喷水| 精品久久大胆人体| www.91视频网| 日本1区2区不卡视频| 欧美久久伊人| 久久久久久久久久久97| 免费看污网址| 四虎在线视频| 北约熟女超碰| 欧美有码激情视频一区二区三区| 丰满搜索结果 -第18页- 久久高清无码| 亚洲欧美日韩电影网站一区| 青青操在线视频| 一级岛国大片| 久久丁香五月天| 天天影视射综合网| www亚洲欧美| 家庭乱伦性爱av| 95精品在线| 春色综合免费| 蜜乳成人AV| 婷婷尹人大香蕉免费| 亚州春色| 东京热一区二区中文字幕| 人人操人人叉人人插人人| 俺去久久| 加勒比色99999| 日本黄色大片一级视频免费麻豆| 免费视频无码| 九九人妻| 777AV电影| 高清不卡视频| 一本色道熟妇| 深夜国产一区二区三区在线看| 欧美.亚洲.另类.丝袜.制服.诱惑| 天天干人妻| 1769一区| 天美国产三级传媒| AV中文字幕三四五| 国产精品探花在线| 日本蜜桃| 国产精品久久妻无码网站| 好吊妞转入那个网| 青青草原av| 操操操日本的逼| 欧美色图私拍91| 夜夜嗨视频| 午夜免费视频1000| 91n处女在线观看| 一区二区娱乐网站| 亚洲图片偷拍欧美| 蜜乳性色无码专日粉嫩骚逼AV| 久久綜合很很很| 国产福利一区二| 九九视品黄色| 超碰免费人妻在线| 综合色图,成人综合网| 黑人性欧美| 操一区| 九t超碰| 99热精品在线在线| 男人的天堂视频精品乱在线| 免费观看啪视频| 天天操天天干美女网址导航| 无码抄逼网| 一区二区三区男人的天堂| 亚欧高清在线| 强乱老妇中文字幕| www.夜夜操| 激情欧美97| 伊人综合色网| 五月天婷婷在线看| 97视频620| 免费伦费视频在线观看| 超碰久久精品| 五月天激情影院| 中国特猛少妇色xxx| 婷婷久草一区二区三区| 九九综合九九综合| 加勒比综合九九99视频在线播放| 亚洲一区操| 日韩资源网| 人人射人人操人人摸| 超碰色大香蕉| 午夜激情床戏激情| 久久精品国产亚洲AV高清演员表| 熟妇高潮精品一区二区三区下载| 国产三级中文有码在线视频| 欧美精品不卡一二三四在线91| 久久98| 我要去看2个日本美女.com曹逼 | 99色| 午夜亚洲WWW湿好大| 久噜噜| 精品久久久亚洲AV成人网站| 日韩色香| 男人久久精品| 大香蕉人妻| 蜜乳中文字幕a在线| 9999久久久久| 一本一道人妻久久一区二区三区 | 九九碰九九爱97超碰| 99蜜桃臀亚洲成人在线观看| 天天操天天舔| 91在线免费精品视频| 粉嫩久久久久| 大香蕉伊人色偷偷在线| 日韩99精品视频综合区| 亚州,欧美在线| 中文字幕视频2区| 亚洲精品中文字幕一区在线视频| 999久久久国产精品| 欧美aⅴ99久久黑人专区| 国模吧 一区二区三区| 国产主播福利| 欧美色图另类图片| 久久久久9999妇女| 狠狠色婷婷| 国产黄片精品在线| 91九色丨风韵犹存| 免费97视频| 国产suv精品一区二区四区999| 狠狠色狠狠色狠狠五月| 男人的天堂2019| 黄色av播放免不| 蜜桃在线观看一区二区三区| 久久精品性| 日本免费中文字幕在线| 国产精品久久久 | 欧美丝袜亚洲| 夜夜综合| 日本天堂网| 丁香婷婷色五月| 人妻一区视频| 手机午夜电影神马久久| 97日韩超碰超碰中文字幕| 女人的天堂大香蕉网| 精品一区二区3区| 1769一区二区| 亚洲三区视频| 日韩福利综合一区| 伊人加勒比| 九七超碰人人乐| 蜜桃精品视频一区二区三区| 亚洲永久永久永久永久一级一级一级精品| 91欧美| 探花精品视频| 久久久久久久国产a∨| 美女熟妇色| av三级电影在线播放| 欧美激情在线观看视频| 久久机热| 夜夜免费视频| 啊灬啊灬啊灬啊灬高潮奶出了免费视 | 久久这里只精品99re66图| 日韩性爱视频在线免费观看| 日韩肏逼视频| 亚洲国产综合视频| 色欧洲| 国语少妇精| 日本韩国五十路六十路七十路老熟女作爱视频网站 | 激情五月丁香五月| 这里都是精品在线观看| 怡红院一区二区熟女人妻| 日韩Va亚洲va欧美Ⅴa久久| 亚洲?V无码专区在线电影| 日本性爱视频一级| 一级做a爰片性色毛片久久| 91夜色| 肉动漫无遮挡h在线观看| 亚洲天堂久久久久久粉红视频| 天天日天天看| 久草午夜| 免费精品国偷自产在线在线| av亚欧| 欧美亚洲国产91在线| 久久午夜鲁丝片| 久久精品福利影院| 中文字幕久热视频在线| 美国一区二区三区视频| 日本精品无码三级网站| 天堂中文日本在线观看| 欧美系列在线一区二区| ?亚洲伊人伊成久久人综合网| 日韩成人精品视频自拍| 国语av最新自产拍在线观看| 青青草丝袜在线视频| 大香蕉久| 偷窥自拍亚洲色图| 中文字幕88av在线| 国产第11页| 麻豆色约约| 亚州综合色| 99视频这有这里有精品| 操逼不卡中文字幕| 久久亚洲婷婷| 久热久一区二区三区| 久久精品视频在线观看| 天天插天天操天天摸天天射天天看| 天天躁狠狠躁av| 欧美啪啪天堂| 欧美色就是色| 精品成人亚洲午夜电影| 牛牛aV| 人妻少妇视频在线播放| 美女大乳久久久久久久女人18| 学生妹天天看| 亚洲se91| 久久久久人妻二区精品叶可怜| 黄色视频特级毛片| 91麻豆天美国产欧美| 麻豆性爱视频在线播放| 中日992视频| 看日韩黄片| 国产精品无码在线| 97AV爱| 九九综合网| 91丝袜在线观看| 性开放中文AV高清无码免费看| 996热| 久久久久密臀一区二区| 91美女视频直播| 91被操| 婷婷色五月激情| 97天天综合网| 99少妇| 精品国产无码中文| 久久久久久久人妻| 欧洲精品网| 五月天亚洲色图| 18禁的网站在线| 女人妻一区| 日本五区不卡| 人人干黄色| 99热这里是精品| 夜夜操一区二区| 亚洲色图综合| 91精品久久综合熟女| 啊啊啊啊二区好大| 免费在线视频97| 久久久久久国产手机AV| 九九九九九九亚洲| 97超碰精品图片| av无码精品久久久久| 日韩二级| 国产精品久久蜜乳av| 国产 亚洲 丝袜 制服| 韩日男人的天堂| 久操免费观看| 色色色色电影网| 欧美韩日精品资源| 伊人操你| 九九热免费国产视频婷婷伊人五月| 99re6在线视频精品免费完整版安卓版| 黄片免费日韩| 盗摄 精品 另类 一区| 九九久久国产精品怡红院| 夜夜操青青草| 黄色十八禁网站| 深夜福利黄片| 久久久久免费少妇| 麻豆天美在线| 韩国一级做A片免费的| 色偷综合| 国产91乱伦| 麻豆 亚洲 97| 中文字幕日韩电影人妻| 国产乱婷婷精品二区三区| 91丝袜在线播放| 大香蕉伊人久久| 自拍啪啪视频| 一区二区三区机械有限公司| 青操影院| 久久久久国产精品喷潮免费观看臀 | 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 手机看av网站在线看| 97欧美色综合| 日本www操操操| 很狠操| 操逼网站视频漫画国产| 色偷偷人人玩人人舔人人操人人摸人人爽 | 新91视频.cmp| 亚洲精品视频在线播放| 亚洲自拍小说| 97人妻碰碰中文无码久热丝袜| 在线 欧美 亚洲| 久操不卡视频| 欧美性色欧美| 久久人妻丝袜一区二区三| 蜜臀久久99精品久久久久久酒店 | 120分钟婬片免费看| 欧美日韩不卡传媒| 激情五月综合网| 久久人| 中文字幕 一区二区 亚洲无码| 9久精品| 亚洲中文字幕乱码无码一区二区| 中文字幕第9页萱萱影音先锋 | 亚洲操操操| 91美女视频在线观看| 久久国产精品91| 精品久久久久久无码| 精品人妻一区春色| 成人性爱全视频观看| 97日韩欧美亚洲| 日韩另类色图| 日韩强奸av| 精品中文日韩字幕视频| 女人午夜视频777| www.91视频网| 爆乳免费黄网站| 亚洲,日韩,欧美,成人播放| 91激情综合| 婷婷综合五月| 亚洲麻豆av一区二区| 又摸又舔在线观看网站| 欧美十八禁网站| 欧美综合第一页| 大香伊人在线一区| 人人做人人妻人人夜视频| 大香蕉人妻久久| 丝袜性亚洲| 中文字幕av亚洲在线| 啊啊啊啊操死我| 日本淫穴在线| 综合久| 男女猛烈无遮掩视频免费软件| 60秒免费视频| 亚洲色图91欧美日韩| 爽极品影院| 少妇无码999| 中文字幕-区二区三区四区视频中国| 日韩欧美午夜视频在线| 97在线免费看视频| 日韩精品第3页| 狠狠狠狠狠干| 亚洲伊人a线观看视频| 亚州欧美在线| 激情终合网| 丁香五月色| 久久久久久日韩| 97天天摸天天爽| 久久久久久裸体| 一牛影视久久久一区二区三区| 亚洲av淫乱| 国产午夜福利专区综合| 蜜区区视频79| 欧美 牲| 久久黄黄| 亚洲国产高清福利视频| 一级毛片电影免费看| 欧美日韩精品久久久久东北老熟妇| 久久精彩视频9| 亚洲国产激情国产av| 国产午夜福利电影免费在线观看| 97久久超碰国产精品| 亚洲系列第一页| 超碰97欧美在线 | 久久久99免费| 99热在线只有精品| 中文乱码99| 婷婷久久五月| 全免费a敌肛交毛片免费| 国产精品久久久久久亚洲色欲| 啊啊啊骚| 色眯眯av| 久久久不卡区一区二区三区久久久| 射 色综合| 中文字幕在线免费观看视频| 一区操逼日比视频| 日韩高清黄片| 国产在线综合福利网站| 亚州男人天堂| 欧美韩日精品99综合| 久久久一区二区| 免费成人在线熟妇网| 亚州色站 日韩电影| 日韩三级久久久| 日韩啪啪啪啪啪| 人妻AV在线| 99综合免费视频| 免费a在线播放v| 日本一区二区做爱的视频| 不卡av在线中文字幕| 99亚洲精品| 天天日天天干天天色| 蜜乳中文字幕a在线| 国产午夜在线观看| 成人精品无码| 日本一区二区亚洲综合| av三级电影在线播放| 99热| 亚洲熟妇一,二,三期| 天天日天天操天天射河南省| 欧美牲| 国产资源中文字幕在线| 在线视频 亚洲精品| 中文字幕精品探花视频| 秋霞午夜成人福利片片| 国产高清成人免费视频| 国产高清自拍视频| 欧美大波激情xxxx| 眼镜人妻101.com| 国产无码高清操逼视频| 国产一级特黄大片处女| 欧美操逼熟女| 综合自拍| 九九热精品在线| 爱爱动态120秒| 日韩久久超碰色| 大奶尤物鲍汁淫荡欧美视频粉嫩夜夜骚| 亚洲棕合电彰| 91久久久老司机| 97综合久第一页| 日日骚一区二区三区| 欧美 亚洲 第一页| 2025年A片视频精品| 探花一区二区三| 不卡啪啪视频| 国产女人高潮视频| 亚洲三级网址久久最新| 经典丝袜一区| 精品人妻一区二区三区不卡断| 久久这里只有精品9| 日本人妻伦在线中文字幕| 999亚洲国产视频| 色婷视频| 中文字幕55555| 九九九九免费视频| 99re欧美| 岛国福利在线精品播放| 天天做日日做天天欢。| 思思热在线| 激情欧美日韩女同久久| 97射欧美| 亚洲欧美综合| 日韩A优精品在线观看| 丁香六月激情| 国产成自自拍在线观看| 欧美成人精品一区二区男人蜜臀| 色臀AV| 干干干天天| 亚洲91少妇| 欧美在线中M| 99久久99久久免费精品蜜臀| 黄色AAAAA欧美| 熟女丰满人妻一区| 香蕉色网| 黄片视频观看|