久久亚洲成a人片熟女精品色一区二区三区|国产精品视频第一精品视频|av天堂热无码手机版|亚洲?v无码久久无遮挡|国产精品偷伦视频免费观看国产|麻豆国产自产精品丰满熟妇|av无码av不卡一区二区|久久亚洲精品中文字

ARTICLE DETAIL

資訊詳情

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

企業(yè)檔案管理系統(tǒng)源碼實(shí)戰(zhàn):從部署到上線的避坑指南

企業(yè)檔案管理系統(tǒng)源碼實(shí)戰(zhàn):從部署到上線的避坑指南 簡介一份基于SpringBootVueMySQL的企業(yè)檔案管理系統(tǒng)可運(yùn)行源碼包面向Java后端開發(fā)者、軟件專業(yè)學(xué)生及企業(yè)信息化建設(shè)者用于解決檔案數(shù)據(jù)分散、借閱流程不透明、檢索效率低等管理難題。系統(tǒng)內(nèi)置檔案分類、權(quán)限管理、生命周期追蹤、電子上傳與掃描歸檔、自動編號、借閱歸還提醒、全文檢索與關(guān)聯(lián)分析等模塊前端覆蓋管理員、員工、管理者多角色界面能夠支撐企業(yè)級檔案全流程管理。資源共21個文件以16個Java源文件為核心配合YAML/XML配置、Maven構(gòu)建文件及Markdown說明文檔整體僅23KB結(jié)構(gòu)精簡便于直接導(dǎo)入IDE運(yùn)行與二次開發(fā)。目前已有95人學(xué)習(xí)下載適合作為SpringBoot企業(yè)級項(xiàng)目實(shí)戰(zhàn)參考也可為中小型檔案管理系統(tǒng)改造提供基礎(chǔ)代碼。1. 企業(yè)檔案管理系統(tǒng)可運(yùn)行源碼先想清楚拿到的是一套什么架子開發(fā)者在找一個企業(yè)檔案管理系統(tǒng)的可運(yùn)行源碼時手頭多半已經(jīng)壓了一個需求合同、證照、項(xiàng)目文檔要?dú)w攏Excel 管不住領(lǐng)導(dǎo)點(diǎn)名要一套系統(tǒng)。反直覺的是網(wǎng)上標(biāo)著“可運(yùn)行”的源碼解壓后能一次跑通的不到一半——數(shù)據(jù)庫腳本缺主鍵、上傳路徑寫死、登錄頁和后臺對不上這些坑幾乎人人踩過。真正的企業(yè)檔案管理系統(tǒng)核心不是頁面多華麗而是圍繞檔案生命周期把分類、權(quán)限、借閱、下載做成閉環(huán)。這套源碼適合 Java 技術(shù)棧的開發(fā)者直接拉下來改也適合把它當(dāng)作一個 RBAC 加文件管理的參考架子需求來了能少走彎路。2. 技術(shù)底子Spring Boot MySQL 本地文件池為什么是這套系統(tǒng)的常見答案2.1 前后端與數(shù)據(jù)庫的常見組合為什么 Spring Boot MySQL 是默認(rèn)選項(xiàng)企業(yè)檔案系統(tǒng)跑在內(nèi)網(wǎng)服務(wù)器上一臺機(jī)器就能部署用不著微服務(wù)那套復(fù)雜體系。常見做法是 Spring Boot 單體應(yīng)用MyBatis 做數(shù)據(jù)訪問MySQL 存業(yè)務(wù)數(shù)據(jù)文件落本地磁盤。前端有兩種形態(tài)老項(xiàng)目多用 Thymeleaf 直接渲染頁面新項(xiàng)目偏向 Vue 前后端分離。選哪種要看你團(tuán)隊(duì)維護(hù)習(xí)慣而不是性能——檔案系統(tǒng)的并發(fā)量通常只有幾十人同時操作性能瓶頸根本不在這層。MySQL 在這個場景里夠用到什么程度檔案量在一百萬條以內(nèi)標(biāo)題、文號、責(zé)任者這幾個字段的 LIKE 檢索加上合理索引響應(yīng)時間能壓在五百毫秒內(nèi)。企業(yè)檔案的典型量級是幾萬到幾十萬條MySQL 完全扛得住團(tuán)隊(duì)的 SQL 排查經(jīng)驗(yàn)也最豐富。至于文件庫為什么不上對象存儲很多企業(yè)檔案不允許出內(nèi)網(wǎng)業(yè)務(wù)上直接排除。本地磁盤按“年份/分類”建目錄數(shù)據(jù)庫里只記相對路徑備份時整盤打包邏輯最直白。這套技術(shù)組合的真正價(jià)值是招聘和排障成本低。Spring Boot 的 starter 機(jī)制把 Tomcat、Jackson、參數(shù)校驗(yàn)全包好了MyBatis 的 SQL 寫在 XML 里新接手的人看半天就能改。相比之下用某個冷門框架寫的檔案系統(tǒng)哪怕代碼再精巧沒人會維護(hù)就是負(fù)債。選型時記住一條檔案系統(tǒng)要的是可靠和可交接不是技術(shù)秀。2.2 檔案生命周期與權(quán)限模型四條線怎么串起來檔案系統(tǒng)和普通 CRUD 系統(tǒng)的本質(zhì)區(qū)別在于它是圍繞“狀態(tài)”和“權(quán)限”設(shè)計(jì)的。檔案生命周期一般是暫存 → 待歸檔 → 已歸檔 → 借閱中 → 已銷毀。每一步都對應(yīng)一條操作記錄誰在什么時間把檔案從哪個狀態(tài)改到了哪個狀態(tài)必須能追溯。這對二次開發(fā)很關(guān)鍵——你往系統(tǒng)里加功能時先問自己這個操作是否改變了檔案狀態(tài)如果改了就得同步寫一條帶操作人、操作時間、操作類型的日志。權(quán)限模型用 RBAC 就夠了。用戶掛在角色下角色關(guān)聯(lián)菜單和操作權(quán)限數(shù)據(jù)權(quán)限按部門過濾。常見角色是系統(tǒng)管理員、檔案管理員、普通用戶、借閱審批人。系統(tǒng)管理員管賬號和角色檔案管理員負(fù)責(zé)歸檔和銷毀普通用戶只能檢索和發(fā)起借閱借閱審批人單獨(dú)審核借閱單。數(shù)據(jù)權(quán)限要落到部門某個分公司的員工默認(rèn)只能看到本部門歸檔的檔案除非單獨(dú)授權(quán)。核心表結(jié)構(gòu)通常是一張檔案主表加多張輔助表下面這張表是常見的設(shè)計(jì)字段名可以按自己習(xí)慣改但職責(zé)劃分大致如此。表名職責(zé)關(guān)鍵字段sys_user用戶id、姓名、部門id、狀態(tài)sys_role角色id、角色編碼、角色名sys_user_role用戶角色關(guān)聯(lián)用戶id、角色idarchive_doc檔案主表編號、題名、分類碼、密級、狀態(tài)、文件路徑archive_category檔案分類表分類碼、分類名、上級分類archive_borrow借閱記錄表檔案id、借閱人、審批人、借出時間、歸還時間archive_log操作日志表檔案id、操作人、操作類型、操作時間實(shí)際跑起來之前先花十分鐘把這幾張表的關(guān)系看懂比直接啟動項(xiàng)目有用得多。很多“可運(yùn)行”源碼跑起來就報(bào)錯不是因?yàn)榇a爛而是你沒建分類表的基礎(chǔ)數(shù)據(jù)或者字段字典里沒初始化狀態(tài)枚舉。下一章進(jìn)入實(shí)操從建庫開始。3. 從解壓到登錄頁數(shù)據(jù)庫初始化與最小啟動配置3.1 環(huán)境清單與數(shù)據(jù)庫初始化先讓 MySQL 建好核心表拿到這類源碼我一般先確認(rèn)三樣?xùn)|西JDK 版本、MySQL 版本、是否要單獨(dú)裝前端依賴。Spring Boot 2.x 對應(yīng) JDK 1.8 或 11MySQL 用 5.7 或 8.x 都行但連接串參數(shù)略有差異。如果是前后端分離版本還要 Node.js 14 以上。先看 README 或 pom.xml別上來就敲命令——見過有人拿 JDK 17 跑 Spring Boot 2.2 的老項(xiàng)目啟動直接報(bào)非法反射警告折騰半天。數(shù)據(jù)庫初始化最容易踩的坑是字符集。建庫時必須顯式指定 utf8mb4否則 MySQL 8 默認(rèn)可能是 utf8mb4 沒問題但 MySQL 5.7 的默認(rèn)字符集可能是 latin1中文寫進(jìn)去全變問號。建庫和建表腳本一般是項(xiàng)目里 sql 目錄下的一個或幾個 .sql 文件按文件名順序執(zhí)行。核心腳本里通常包含下面這類建表語句CREATE DATABASE IF NOT EXISTS archive_db DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; USE archive_db; CREATE TABLE archive_doc ( id BIGINT PRIMARY KEY AUTO_INCREMENT COMMENT 主鍵, doc_no VARCHAR(40) NOT NULL COMMENT 檔案編號, title VARCHAR(200) NOT NULL COMMENT 題名, category_code VARCHAR(20) NOT NULL COMMENT 分類碼, secret_level TINYINT NOT NULL DEFAULT 0 COMMENT 密級:0公開,1內(nèi)部,2秘密,3機(jī)密, dept_id BIGINT NOT NULL COMMENT 歸屬部門, status TINYINT NOT NULL DEFAULT 0 COMMENT 狀態(tài):0暫存,1待歸檔,2已歸檔,3已銷毀, file_path VARCHAR(255) NULL COMMENT 文件相對路徑, uploader VARCHAR(50) NULL COMMENT 上傳人, create_time DATETIME NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT 創(chuàng)建時間, INDEX idx_dept_status (dept_id, status), INDEX idx_category (category_code), UNIQUE KEY uk_doc_no (doc_no) ) ENGINEInnoDB COMMENT檔案主表;這段 SQL 里有幾個地方值得注意。doc_no 加唯一鍵是因?yàn)闄n案編號在業(yè)務(wù)上必須全局唯一如果源碼里沒有這個約束后續(xù)導(dǎo)入歷史數(shù)據(jù)時會重復(fù)。idx_dept_status 是復(fù)合索引匹配“按部門查列表再按狀態(tài)過濾”這個最常見的查詢路徑。file_path 存的是相對路徑不是絕對路徑這一點(diǎn)非常重要——絕對路徑寫進(jìn)數(shù)據(jù)庫換臺機(jī)器整張表就廢了。密級和狀態(tài)都用 TINYINT 存數(shù)字不要用字符串業(yè)務(wù)上擴(kuò)展枚舉更方便。執(zhí)行導(dǎo)入命令時注意先確認(rèn) MySQL 賬號權(quán)限。常見做法是用 root 執(zhí)行 source 命令或者用 mysql 客戶端重定向文件mysql -uroot -p sql/init.sql mysql -uroot -p sql/data.sqlinit.sql 建表data.sql 導(dǎo)入基礎(chǔ)數(shù)據(jù)包括超級管理員賬號、角色、菜單和分類字典。導(dǎo)完后可以驗(yàn)證一下執(zhí)行SHOW TABLES;看表是否齊全再查一下archive_category有沒有分類數(shù)據(jù)。很多項(xiàng)目啟動報(bào)錯“表不存在”或“分類碼為空”都是因?yàn)橹慌芰私ū砟_本忘了跑數(shù)據(jù)腳本。日志里報(bào)的錯往往滯后先查表再啟動能省半小時。3.2 改配置、起服務(wù)、看日志跑通最小閉環(huán)數(shù)據(jù)庫就緒后下一步是改配置文件。Spring Boot 的配置集中在 src/main/resources/application.yml少數(shù)老項(xiàng)目是 application.properties。你需要改的通常只有三個地方數(shù)據(jù)庫連接串、文件存儲根目錄、端口。先給一份最小化的配置參考server: port: 8080 spring: datasource: url: jdbc:mysql://localhost:3306/archive_db?useUnicodetruecharacterEncodingutf8serverTimezoneAsia/ShanghaiuseSSLfalse username: root password: your_password servlet: multipart: max-file-size: 200MB max-request-size: 500MB archive: storage: # 檔案文件根目錄Linux 上建議放到 /data/archive不要丟在用戶目錄下 root-path: /data/archive數(shù)據(jù)庫連接串里有三個參數(shù)別動useUnicodetrue 和 characterEncodingutf8 負(fù)責(zé)中文不亂碼serverTimezoneAsia/Shanghai 解決 MySQL 8 的時區(qū)報(bào)錯。如果你用的是 MySQL 8.0 以上連接串里最好再加一個allowPublicKeyRetrievaltrue否則可能報(bào) Public Key Retrieval is not allowed。multipart 的兩個限制是上傳大掃描件用的默認(rèn) 1MB 太小傳個幾十 MB 的 PDF 直接報(bào)錯。root-path 是本地文件池的根目錄按“年份/分類”自動建子目錄這個目錄必須有寫權(quán)限。配置改完啟動方式取決于項(xiàng)目形態(tài)。Maven 項(xiàng)目直接跑插件或者打包成 jar 再跑兩種都是一條命令的事# 本地開發(fā)直接跑 mvn spring-boot:run -Dspring-boot.run.profilesdev # 或者打成 jar 再跑方便放到測試服務(wù)器 mvn clean package -DskipTests java -jar target/archive-system.jar --spring.profiles.activedev啟動成功的標(biāo)志不是控制臺不報(bào)錯而是看到這行日志Started ArchiveApplication in 12.345 seconds。在這之前Tomcat 會先輸出Tomcat started on port(s): 8080看到這行說明 Web 容器起來了。瀏覽器訪問http://localhost:8080/login如果能出現(xiàn)登錄頁最小閉環(huán)就算跑通了。默認(rèn)賬號密碼一般在 data.sql 里常見的是 admin / admin123或者 admin / 123456去腳本里搜一下就知道。啟動失敗最典型的三類錯誤第一類 Access denied for user是數(shù)據(jù)庫賬號密碼不對或權(quán)限不足第二類 Unknown database是沒執(zhí)行建庫腳本第三類時區(qū)錯誤是連接串里少了 serverTimezone。這三類在日志里都有明確關(guān)鍵字按關(guān)鍵字搜比從頭到尾讀日志快得多。如果項(xiàng)目里帶了前端目錄且要求分離部署記得先 npm install 再 npm run dev前端代理指向 8080 端口否則登錄請求會被 CORS 攔下來。4. 檔案業(yè)務(wù)怎么跑通錄入、檢索、借閱與下載的關(guān)鍵設(shè)計(jì)4.1 檔案錄入與分類字段設(shè)計(jì)背后的業(yè)務(wù)規(guī)則檔案錄入界面看起來是個普通表單但字段設(shè)計(jì)背后是業(yè)務(wù)規(guī)則。最核心的字段有四組標(biāo)題和文號決定檔案“叫什么”分類碼和密級決定它“歸到哪、誰能看”保管期限決定它“留多久”文件路徑?jīng)Q定它“存到哪”。錄入時的校驗(yàn)邏輯通常是這樣標(biāo)題不能為空文號在同類檔案里不能重復(fù)密級默認(rèn)是公開但可以改保管期限默認(rèn)按分類表的配置帶出。檔案編號是錄入時自動生成的生成規(guī)則一般是“分類碼 年份 流水號”。例如合同類的分類碼是 HT2025 年第 123 份檔案的編號就是 HT-2025-000123。這個編號生成邏輯在源碼里通常是一個 Service 方法用數(shù)據(jù)庫的同一張計(jì)數(shù)表或 Redis 自增來保證并發(fā)下不重復(fù)。如果你要改編號規(guī)則別只改前端顯示要改生成邏輯——否則會出現(xiàn)界面上顯示一套編號、數(shù)據(jù)庫里另一套編號的問題。文件存儲路徑的設(shè)計(jì)決定了后期維護(hù)成本。常見做法是在 root-path 下按“年份/分類碼”建二級目錄比如/data/archive/2025/HT/000123.pdf。數(shù)據(jù)庫里只存相對路徑2025/HT/000123.pdf下載時再拼上 root-path。這樣做的理由是備份時只需要備份 root-path 整個目錄換機(jī)器時只改 root-path 一個配置不用動數(shù)據(jù)庫。我見過有項(xiàng)目直接把完整路徑存進(jìn)數(shù)據(jù)庫結(jié)果測試環(huán)境路徑和生產(chǎn)環(huán)境不一致下載全部 404最后只能寫批量腳本修數(shù)據(jù)那就是給自己找罪受。密級字段是整個錄入表單里最不能忽略的。公開、內(nèi)部、秘密、機(jī)密四級對應(yīng)不同的借閱審批策略。常見做法是公開檔案直接下載內(nèi)部檔案登錄后可看但下載要記錄日志秘密及以上必須走借閱審批。這個規(guī)則要在錄入階段就定好因?yàn)闄n案一旦歸檔密級修改就要走審批流程不能像普通編輯一樣隨便改。源碼里一般有個字典表管理密級枚舉新增密級時要同步改接口校驗(yàn)邏輯和前端下拉框。4.2 全文檢索與文件下載為什么 LIKE 檢索能覆蓋九成需求檢索是整個系統(tǒng)里最常用的功能也是性能最容易翻車的地方。企業(yè)檔案的檢索需求說穿了就三類按標(biāo)題查、按文號查、按責(zé)任者或主題詞查都是模糊匹配。很多人一聽說檢索就想到 Elasticsearch但先冷靜想想數(shù)據(jù)量十萬條檔案每個字段建好普通索引LIKE 查詢加前綴匹配響應(yīng)時間一般在幾百毫秒內(nèi)MySQL 完全能應(yīng)付。真正需要 Elasticsearch 的場景是檢索 PDF 和 Word 的正文內(nèi)容或者檔案量到了百萬級以上這才值得引入全文檢索中間件。常見的做法是把檢索 SQL 寫成動態(tài)拼接根據(jù)用戶輸入的關(guān)鍵詞決定查哪個字段。核心查詢邏輯類似下面這段SELECT id, doc_no, title, category_code, secret_level, create_time FROM archive_doc WHERE status 2 AND dept_id IN (SELECT dept_id FROM sys_user_dept WHERE user_id #{userId}) AND ( title LIKE CONCAT(%, #{keyword}, %) OR doc_no LIKE CONCAT(%, #{keyword}, %) OR finder_no LIKE CONCAT(%, #{keyword}, %) ) ORDER BY create_time DESC LIMIT #{offset}, #{pageSize};這段 SQL 里最容易被忽略的是dept_id IN (...)這個子查詢它實(shí)現(xiàn)了數(shù)據(jù)權(quán)限過濾。如果源碼里只查檔案表不查部門權(quán)限就會出現(xiàn)這樣的情況A 部門的員工搜到了 B 部門的機(jī)密檔案這在企業(yè)內(nèi)部是嚴(yán)重安全事故。LIKE 的寫法用CONCAT(%, #{keyword}, %)而不是直接拼字符串是為了防止 SQL 注入——MyBatis 的#{}會做參數(shù)預(yù)編譯而${}是直接拼接檢索這種用戶輸入場景永遠(yuǎn)別用${}。下載接口的設(shè)計(jì)要比檢索更小心。常規(guī)流程是前端請求下載接口 → 后端校驗(yàn)登錄態(tài) → 校驗(yàn)數(shù)據(jù)權(quán)限 → 拼文件絕對路徑 → 檢查文件存在 → 以流的方式返回。這里有一個很多源碼都會犯的錯校驗(yàn)了登錄態(tài)但沒校驗(yàn)數(shù)據(jù)權(quán)限結(jié)果任何登錄用戶都能下任何檔案。正確的校驗(yàn)順序是先權(quán)限后文件寧可多查一次數(shù)據(jù)庫也不要讓越權(quán)文件流出去。文件讀取用InputStreamResource而不是byte[]因?yàn)榇笪募苯幼x入內(nèi)存幾百 MB 的文件能把 JVM 堆撐爆。5. 可運(yùn)行源碼避坑數(shù)據(jù)庫、路徑與權(quán)限的三個硬骨頭5.1 坑一數(shù)據(jù)庫腳本少跑一遍字符集與時區(qū)導(dǎo)致啟動即崩現(xiàn)象按照 README 導(dǎo)入數(shù)據(jù)庫后啟動項(xiàng)目控制臺報(bào)Unknown database或者能啟動但插入中文檔案標(biāo)題后顯示為“???”時間字段比本地時間差八小時。原因建庫時沒執(zhí)行CREATE DATABASE語句只導(dǎo)了建表腳本——MySQL 里沒這個庫連接自然失敗。中文亂碼是庫或表的默認(rèn)字符集不在 utf8mb4常見于 MySQL 5.7 默認(rèn) latin1 的老環(huán)境。時間差八小時是連接串里少了serverTimezoneAsia/ShanghaiMySQL 8 默認(rèn)用 UTC 解析時間。解決建庫和建表是兩件事先執(zhí)行帶CREATE DATABASE的 init.sql再執(zhí)行建表腳本最后導(dǎo)基礎(chǔ)數(shù)據(jù)。字符集問題用ALTER DATABASE archive_db CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci;修改如果表已經(jīng)建好再把表的字符集也改掉。連接串三個參數(shù)一個都不能少characterEncodingutf8、serverTimezoneAsia/Shanghai、useSSLfalse最后那個參數(shù)在測試環(huán)境不加會報(bào) SSL 警告雖然不影響啟動但日志里一大片很煩。5.2 坑二上傳路徑寫死換臺機(jī)器全部文件找不到現(xiàn)象在本地開發(fā)時上傳的檔案部署到服務(wù)器后全部下載失敗日志報(bào)FileNotFoundException但數(shù)據(jù)庫里的檔案記錄一條沒少。原因源碼配置或代碼里把文件存儲路徑寫死了比如D:\\upload\\archive或/home/ubuntu/upload這個路徑只存在于開發(fā)機(jī)生產(chǎn)服務(wù)器上根本沒有這個目錄或者沒有寫權(quán)限。數(shù)據(jù)庫里存的是絕對路徑換機(jī)器后路徑前綴全部失效。解決把存儲根目錄抽成配置項(xiàng)用環(huán)境變量注入。application.yml里這樣寫root-path: ${ARCHIVE_ROOT:/data/archive}。部署時在啟動腳本里export ARCHIVE_ROOT/data/archive如果環(huán)境變量沒配就回退到默認(rèn)值。同時數(shù)據(jù)庫存儲邏輯要改成只存root-path下的相對路徑下載時用Paths.get(storageRoot).resolve(relativePath)拼出完整路徑。改完配置后記得把已上傳的文件按新目錄結(jié)構(gòu)遷移一次舊數(shù)據(jù)跑個腳本改 path 前綴或者寫一個兼容邏輯自動拼接。5.3 坑三下載接口繞過權(quán)限校驗(yàn)機(jī)密檔案被直接拿走現(xiàn)象未登錄狀態(tài)下訪問下載接口的完整 URL比如/archive/download?id108竟然能直接把文件下載下來。登錄用戶把鏈接發(fā)給別人別人點(diǎn)開也能下。原因下載接口只校驗(yàn)了文件是否存在沒有校驗(yàn)當(dāng)前請求是否攜帶合法登錄態(tài)。常見寫法是直接用GetMapping(/download/{id})參數(shù)只有檔案 id方法體里文件存在就返回文件流——但沒從 Session 或 Token 里取當(dāng)前用戶。這種接口在企業(yè)內(nèi)網(wǎng)里尤其危險(xiǎn)因?yàn)殒溄右坏┍晦D(zhuǎn)發(fā)等于把檔案原文直接暴露。解決下載接口必須同時校驗(yàn)登錄態(tài)和數(shù)據(jù)權(quán)限缺一不可。核心邏輯參考下面這段GetMapping(/download/{id}) public ResponseEntityResource download(PathVariable Long id) { ArchiveDoc doc archiveDocMapper.selectById(id); if (doc null || !permissionService.canDownload(getLoginUser(), doc)) { return ResponseEntity.status(403).build(); } Path file Paths.get(storageRoot).resolve(doc.getFilePath()).normalize(); if (!file.startsWith(Paths.get(storageRoot))) { return ResponseEntity.status(400).build(); } return ResponseEntity.ok() .header(HttpHeaders.CONTENT_DISPOSITION, attachment; filename\ doc.getTitle() \) .body(new InputStreamResource(Files.newInputStream(file))); }這段代碼里有兩個關(guān)鍵點(diǎn)。canDownload方法內(nèi)部校驗(yàn)用戶是否登錄、檔案密級是否超過用戶權(quán)限、檔案部門是否在用戶的數(shù)據(jù)權(quán)限范圍內(nèi)。file.startsWith(Paths.get(storageRoot))是防路徑穿越——如果數(shù)據(jù)庫里的相對路徑被人改成../../etc/passwd這個校驗(yàn)?zāi)軘r下來。文件流用InputStreamResource包裝避免大文件吃滿內(nèi)存。改完后自測一遍退出登錄訪問下載接口應(yīng)該返回 403登錄后下載不屬于本部門的秘密檔案也應(yīng)該返回 403。5.4 坑四大文件上傳超時與文件句柄泄漏現(xiàn)象上傳 100MB 以上的掃描件時前端請求轉(zhuǎn)圈幾分鐘后報(bào)錯或者上傳成功后下載時提示文件被占用。服務(wù)器日志里出現(xiàn)Connection reset或Too many open files。原因multipart 限制沒調(diào)大是第一個原因Spring Boot 默認(rèn)單文件最大 1MB超過直接拒絕。第二個原因是文件讀寫方式不對——上傳時把整個文件讀入 byte[] 再寫盤大文件直接把內(nèi)存撐爆下載時用FileInputStream讀完沒關(guān)流時間長了文件句柄耗盡。解決先調(diào)大 multipart 限制max-file-size按業(yè)務(wù)實(shí)際需要來一般掃描件建議 200MBmax-request-size要比單文件略大。讀寫文件統(tǒng)一用流式處理上傳用MultipartFile.transferTo()避免內(nèi)存拷貝下載用InputStreamResource。上傳大文件時前端請求時間可能超過 Nginx 默認(rèn)的 60 秒代理超時如果帶了 Nginx 前置proxy_read_timeout也要相應(yīng)調(diào)大。文件句柄問題用lsof -p pid | wc -l排查如果數(shù)量持續(xù)上漲不回落優(yōu)先檢查自己代碼里有沒有忘記 close。6. 從可運(yùn)行到可上線環(huán)境變量、備份與二次開發(fā)的收尾習(xí)慣6.1 把配置拆成環(huán)境相關(guān)與環(huán)境無關(guān)上線前先做一次部署演練可運(yùn)行源碼只代表它能跑不代表它能上線。我交付這類系統(tǒng)前會強(qiáng)制自己做一次部署演練找一臺干凈服務(wù)器從零裝 JDK、MySQL再用一條啟動命令把系統(tǒng)拉起來。如果過程中要改三個以上配置文件說明配置設(shè)計(jì)不合格。密碼、數(shù)據(jù)庫地址、存儲路徑這些環(huán)境相關(guān)變量一律用${ENV_VAR}占位代碼里不要出現(xiàn)任何硬編碼。6.2 每日備份腳本與清理策略給系統(tǒng)留一條后悔藥檔案系統(tǒng)的數(shù)據(jù)比代碼值錢。代碼丟了可以重新拉倉庫檔案文件和數(shù)據(jù)庫丟了就是事故。我一般會在交付時附帶一個備份腳本放到 cron 里每日凌晨執(zhí)行#!/bin/bash # 每日凌晨備份檔案庫與文件目錄保留最近 30 天 BACKUP_ROOT/backup/archive DATE$(date %Y%m%d_%H%M%S) mkdir -p $BACKUP_ROOT/$DATE mysqldump -uroot -p$DB_PASS archive_db | gzip $BACKUP_ROOT/$DATE/db.sql.gz tar czf $BACKUP_ROOT/$DATE/files.tar.gz -C /data/archive . # 清理 30 天前的備份防止磁盤被撐爆 find $BACKUP_ROOT -type d -mtime 30 -exec rm -rf {} \;這個腳本里有兩個關(guān)鍵點(diǎn)。mysqldump 一定要加--single-transaction否則備份期間業(yè)務(wù)寫入會導(dǎo)致數(shù)據(jù)不一致——腳本里沒寫但你實(shí)際部署時建議加上。find 清理要用-mtime 30意思是修改時間超過 30 天的目錄千萬不要用-atime因?yàn)閭浞菸募脑L問時間經(jīng)常被各種巡檢腳本修改容易誤刪。備份頻率按數(shù)據(jù)變更強(qiáng)度來檔案系統(tǒng)一天新增幾百條記錄以內(nèi)每日一次足夠不用做實(shí)時備份。至于二次開發(fā)我養(yǎng)成了一個習(xí)慣加需求時先問自己改的是“基礎(chǔ)數(shù)據(jù)”還是“流程數(shù)據(jù)”。新增字典項(xiàng)、分類、菜單屬于基礎(chǔ)數(shù)據(jù)直接改數(shù)據(jù)庫或管理界面就行。改動檔案狀態(tài)流轉(zhuǎn)、借閱審批、權(quán)限校驗(yàn)屬于流程邏輯必須先理清影響范圍再動代碼。歸檔后的檔案表結(jié)構(gòu)能加字段就別改字段類型——比如把 title 從 VARCHAR(200) 改成 VARCHAR(500)MySQL 8 里會導(dǎo)致全表重建幾十萬條數(shù)據(jù)的表鎖住幾個鐘頭業(yè)務(wù)直接停擺。線上出過一次這種事之后凡是檔案表的 DDL我都先在測試庫跑一遍看影響行數(shù)。檔案系統(tǒng)的技術(shù)含量不在高并發(fā)、不在炫技而在數(shù)據(jù)準(zhǔn)確和權(quán)限嚴(yán)密。你照著這套思路把一個可運(yùn)行源碼跑通、部署、備份起來就已經(jīng)超過了大部分停留在“能啟動就算完事”的開發(fā)者。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
91 国产丝袜在线放观看| 天天做日日做天天欢。| 日韩美女高潮喷水视频| 激情婷婷五月天| 美女被啪到深处抽搐视频| 成人A片男人的天堂| 全免费a敌肛交毛片免费| 9精品久久久久| 一区=区三区视频| 8050无码八戒| 欧美日韩国产黄色片| 丰满人妻-区二区三区免费看| 午夜呻吟欧美| www.狠狠干.coom | 97久久精品不卡| 密臀在线免费观看| 嗯嗯,啊啊,国产精品| 欧美成人性爱视频免费观看| 婷婷综合久久| 九九RE视频在线精品| 亚欧性爱无码| 五月婷丁香| 亚洲图片婷婷五月天| 久久9久| 九七毛片九九毛片| 亚洲情色在线| 日韩少妇丰满亚洲| 97就爱干| 亚洲在线综合| 91美女高潮| 九九九热精品| 少妇激情AV| 亚洲人码13| 91色插| 中文字幕精品三级久久久| 四虎免费看黄| 日本黄色裸日本黄色裸体 | 国产成人精品午夜福利| 哑洲在线| 岛国天天午夜影院传媒网| 中文字幕第7页| 十八禁电影伊人网| 少妇特黄一区二区三区| 久久精品国产97欧美精品亚洲 | 九久9精品| 97精品视频在线播放| 2019亚洲男人天堂| 久久久999国产精品| 性色高清..……| 日本一卡二区在线| av强奸乱轮| 亚洲精品精品一区二区| 四虎AV在线观看| 男人的天堂不卡一区二区| 欧美在线观看综合国产| 国产成人综合网| 9999久久久久| 熟妇人妻一区二区| 怡春苑东京热| 亚州黄站| 搡老女人老91妇女老熟女| 成人性爱免费播放| 欧美网站免费| yazhousetuoumei| 精品一区二区麻豆| 亚洲风情综合网| 久久国产乱子伦精品免费女,网站| 中文字幕精品探花视频| 在线观看AV片| 天美传媒国产原创中文字幕亚洲欧美另类 | 婷婷久久综合| 好好的日:com久久九九| 日本幼女18+| 91欧美色| 国产男女无套视频免费观看| 欧中日成人免费影视| 久久精品91| 天美91| 亚洲A曰本VA欧美VA视频| av亚欧| 中国一区二区亚洲人妻| 青青草日逼视频| 日韩AV无码网站| 久久av成人无码免费| 国产成人无码久久精品| 91黑丝美女| 超碰吊日色| 少妇厨房愉情理伦片bd在线观看| 无码人妻丰满热妇又大又粗| 一二三啪啪专区| 亚洲综合另类色图| 操逼操逼逼操操逼91| 丁香五月成人| 公司1区2区3区精产精| 天天综合网网欲色| 日韩精品99999| 东京热伊久| 18禁免费视频| 天天干天天日天天射黄色大片| 欧美传媒一区| 强奸乱伦AV一天堂网| 激情久久av一区av二区av| 亚州综合AⅤ| 日韩av无码网站| 伊人女女资源在线观看| 精品无码一二三四区| 久久丝袜| 欧美丰满熟妇XXXX性ppX人交| 青久操| 中文字幕一区二区三区50路| 激情综合久久| 国产后入式在线观看| 国产成人欧美一区二区三区的国产| 激情五月天网| 欧美+日产+中文| 伊人女女资源在线观看| 久久一本大香蕉| 亚洲一区操| 91久热这里只有精品| 日本幼女18+| 黄色免费网页无码| 9Ⅰ超碰| 99无码视频| 欧美成人精品一区| 国产熟女少妇一区| 欧美一区二区男人天堂| 精品91摸| 国产精品麻豆免费视频| 亚洲精品不卡一二三区| 成人5码视频| 狠狠躁久久躁| 欧美97在线观看| 超碰日韩人妻| 99re在线视频| 综合欧美日本三级| 中国91AV| 国产黄a三级三级三级av在线看| 51一区二区三区| 亚洲AV不卡在线观看尤物| 青青青国产手线观看视频2| 艳美熟妇先锋一二三区| 亚洲精品无码成人久久久99| 色一区二区三区综合| 黄页视频网站野外| 日韩精品亚洲一二三| 性色av婷婷久久一区二区点复制| 精品视频在线观看精品| 中国熟女91| 日本综合久久| 亚洲乱伦图片视频| 香蕉精品二区二区| 国产精品国产自产拍高清AV| 国产一区免费午夜视频| 清纯唯美亚洲另类| 粉嫩国产精品久久久| 色综合天天| 日韩BBN| 欧美超碰96| 久久久无码av精| 青青草一区二区高清无码视频| 久久久久久亚洲精品不卡人乳| 亚洲另类天堂| 天天综合网~91入口| 亚洲第一在线视频| 一中国女人毛片水真多| 免费男人的天堂| 国产女人高潮视频| 中国东北熟女老太婆内谢| 欧美色图亚洲色,麻豆| 色色99| 一本色道久久天天射天天干| av2014 日韩在线中文字幕| 久妇网| 成年人性爱日韩| V A在线| 人妻美腿丝袜日韩| 久操在97| 欧美日韩99精品麻豆传媒| 中文字幕在线观看永久| 日产欧美电影一区二区三区| 91美女视频电影| 青青草黑寡妇男人天堂| 超碰97精品在线| 狠狠激情综合狠狠操中文字幕| 成人av性爱电影在线观看| 人妻大香蕉| 欧美香蕉视xxx| 大香蕉九九| 午夜超爽| 色牛aV| 婷婷20月天青娱乐| 97视频新免费| 欧美熟妇操操视频| 欧美熟妇乱码在线一区| 中文字幕 码 自拍 视频 区| 日韩欧美中文日韩欧美色| 欧美色女人| 91精品国产91久久久久久久久久久久| 久久超碰av在线| 大香蕉在线视频重口味毛片在线| 久久香蕉国产传媒一区剧情天美| 啊啊啊啊啊啊啊在线| 精品四五区| a久久| 99在线精品观看99| 欧美综合站| 91无码中出人妻视频| 亚洲一区二区性爱电影| 欧美拳交在线播放| 欧美日韩婷婷中文| 欧美色图97| 大香蕉92| 婷婷五月天色网| 伊人玖玖网| 美女91在线观看| 综合网欧| 久操在97| AV中文字幕三四五| 美女诱惑久久| 国产精品黑人一区二区三区| 内射夫妻三片| 欧美精品xxxwww| 亚洲av综合色区无码一| 五月激情在线| 大香蕉十区| 91 丝袜在线| 色 亚洲 91| 亚洲永久永久永久永久一级一级一级精品| 亚洲和欧美裸体美女双飞视频| AV一二区| 色麻豆AV| 国产精品久久久亚洲第一牛牛_在线观看| 九九热只有精品| 风韵犹存大大大大香蕉| 校园春色五月天| AAAA欧美日韩| 多乙久久久久久| 中文字幕一区日韩精| 亚洲少妇色| 97超碰天天爱天天爱| 伊人久久大香蕉线AV五月天| 国产2.3.4区| 蜜臀中文字幕| 久久东京伊人一本到鬼色| 午夜福利精品| 激情一区二区三区在线观看| 亚洲淫乱骚妇AV| 亚洲色图欧美色图制服诱惑| 国产精品剧情| 在线观看免费视频国产| 日本色色色| 欧美色图片91| 亚洲国产丝袜熟女av| 一区操逼| 色综合色色| 日本一二三高清| 国产精品在线一区二区| 免费看毛片操穴| 伊人97色天使| 九九热三级片| 国产午夜无码片在线观看影视| 亚洲国产第一页综合视频| 91久久久视| 国产后入式在线观看| 亚洲一区日韩精品中文字幕| 国产精品亚洲免费| 物尤视频一区二区| 国产视频人人网| 92午夜免费福利视频| 不卡九肏| 人妻久久一区二区三区| 人人天天干干| 日韩资源网| 97精品免费| 人人扣人人操| 日韩无码人妻中字久久三区四区| 奇米四色影视777久久久| 久久熟女人| 色噜噜人妻av中文字幕| 手机看av网站在线看| 欧美激情片一区二区| 国产白丝av| 桃花色涩综合影院| 日韩精品一区,二区 九九...老司机| 97亚洲综合| 国产成人+综合亚洲+天堂| 国产乱子伦一区二区三区免看| 亚洲欧洲成人在线电影| 欧美躁死她一区二区| 狠狠色五月亚洲91| 九九亚洲视频| 好爽免费视频| 亚洲综合小说另类图欧美视频激情小说色五月天 | 欧美 日韩 国产传媒| 97精| 亚洲精品蜜桃久久久一区二区三区| 国产乱码久久久| 韩国黄色片精品久久久| 久久久女人| 国产尤物AV尤物在线观看不卡| 福利天堂| 天天躁日日躁AAA片李宗瑞| 老熟女中文字幕高清| 99re热有精品视频国产| 亚洲欧美国产中文字幕| 国人欧美精品一区二区| 亚洲影视第一页| 人人操,操人人| 一本色道久久综合狠狠操| 777奇米影视777四色| 久肏视频字幕| 精品久久久九九九孕妇| 在线观看不卡一区二区三区| 亚洲天天影视色综合| 色噜噜精品一区二区三| 男同专区一区二区三区在线| 亚洲国产欧美日韩人妻日中文| 少妇无码999| 先锋精品av色鲁| 蜜臀99久久精品久久久懂爱| 久草精品一区| 一区二区偷拍拍视频| 久久婷综合| 天天影视91看看| 懂色AV一区二区三区| 大香蕉一级黄色片久久| 97超碰人操| 一区在线观看中文字幕| 97干97色| 激情人妻另类| 怡红院视频在线| 成人av性爱电影在线观看| 大肉棒导航| 久99久视频| yiqicaoav| 九九九九免费高| 国产欧美一区激情交| 欧美97超碰| 亚洲色资源| 99这里有精品视频| 久久成人午夜精品影院 | 久久ww| 日韩在线观看三级电影| 制服诱惑亚洲一区二区三区在线观看| 欧美99热| 日本免费一级AAA大片器 | 91N综合网| 欧美中文字幕一区 | 日韩中文字幕精品一区在线| 久伊人网78| 中文字幕在线观看AV| 国精精品无码一二三区水多多| 国产精品久久久久久久久久久久久久吹 | 欧美se综合| 17c嫩草51久久91嫩草| 午夜啪| 国产日韩欧美操逼视频| 亚洲在线A| 天天综合精品| 欧美一区二区亚洲天堂| ,成人免费啪啪视频| 蜜臀久久99精品久久久久久成人小说 | 亚洲少妇自拍中文字幕懂色| 91精品人妻一区二区三区蜜桃臀| 久久有码视频| 太久视频| 伦在线97| 99re9| 久久人妻熟女一区二区| 黄色av片三级三级三级免费看| 中文字幕一区二区三区人妻不卡| 亚洲揄拍网| 亚洲一区深夜| 91美女中出| 国产精品久久伊人| 久久精品性| 亚洲精品啪视频| 婷婷av在线中文字幕| 亚欧洲日韩国产精品| 91激情综合| 台湾大香蕉99热| 淫色网综合| 国产精品青青草| 色婷五月天| 十八禁啪啦拍视频无遮挡| 无码最新| 久久成人午夜精品影院 | 国产无码久久高清| 国产一区二区三区高清视频| 亚洲网站一区二区在线| 亚洲加勒比久久日本道| 蜜乳AV免费观看| 婷婷伊人五月| 新亚洲无码| 91久久青青草原精品| 成人小电影网站tex| 蜜臀久久99精品久久久久电影| 骚熟女AV网| 欧美色图99| 91宗合网| 无码人妻一区二区三区色欲aⅴ| 免费一二区| 五月丁香激情四射| 亚洲巨爆乳一区二区三区四季网| 欧美亚洲素人制服精品| 欧美性爱免费短视频| 国产高清精品一区二区三区毛片| 性影在线视频| 国产精品99久久久www| 麻豆啪啪啪视频| 三级三久久线久久99久目本WW| 能看的AV| 性色高清在线| 9999久久久久| 欧美性91| 粉嫩av久久一区二区三区| 亚洲成人在线高清| 欧美成va视频网站| 美女露胸露奶头| 啊啊啊啊在线观看网址| 97伊人超碰| 人妻少妇精品| 欧美极品性爱天天射| 综合欧美日本三级| 亚洲自拍欧美国产首页网曝 | 免费看片黄| 顶级丝袜熟女一区二区三区| av2014 日韩在线中文字幕| 久久精品国产亚洲av水密被窝| 2021国产成人精品久久| 久久无码成人| 盗摄 精品 另类 一区| 91欧美美女日韩国产婷婷| 久久九九久精品国产尤物|国产精品爽黄69天堂A片潘金莲,国产亚洲精品第一综合 | 日韩人人精品| 国产91精品在线免费| 亚洲最大成人a毛毛片| www.久久| 国产视频大全| 婷婷涩嫩草鲁丝久久午夜精品| 小视频国产| 干日本人少妇午夜寂寞影院| 天天拍夜夜| 国产日韩精品无码去免费专区国产| 免费看片黄| 久久曰曰| 国产一区二区三区,在线观看观看| 九九九九热只有精品| 久久精品 六十路 熟女 欧美| 亚洲精品日韩国产欧美| 99re在线视频国产| 久久久久久99AV无码免费网站| 午夜电影在线观看无码专区| 超碰97资源大奶| 亚洲丝袜二区在线| 日韩精品1区2区中文字幕| 综合干干干av久久久综合网| 91综合网在线| 久久人人爽人人爽人人片Ⅴ| 亚洲精品蜜桃久久久久久久| 日韩操啪| 久久久久久久九九九九九九| 久久东京热久久| 国产乱伦性爱AV| 自拍亚洲综合| 亚洲最大成人a毛毛片| 亚洲 欧美 另类 综合 偷拍| 亚洲在线a| 婷婷导航| 2017天天操| 麻豆国产免费影片| 天天舔日美女视频| 成人片在线播放| 四虎884| 嗯~啊~快点 死我视频| 97资源久久| 97香焦色区| 十八禁黄色| 五月丁香六月激情| site:sinbotex.com| 婷婷五月天色| 99中文字幕| 国产欧美日韩在线观看麻豆传媒公司 | 超碰79人人乐| av黄图片在线观看| 91偷拍欧美亚洲| 思思热在线视频在线| 亚州成人a∨| 亚洲欧洲av影音| 国产传媒日本欧美专区| 97人人夜夜精品视频| 伊人久久大香蕉线AV五月天| 狠狠中文字幕| 91美女视频直播| 五月天婷婷基地| 亚洲人天堂| 国产人伦精品一区二区三区| 亚洲精品乱码线路中文字幕| 色偷综合| 色情婷婷| 中文字幕美女91| 2017天天透天天通天天擦| 日韩精品在线观看网站| 中文字幕99999| 激情亚洲天堂| 激情五月天社区| 麻豆尤物视频网| 天天看天天综合成人网| 日韩性爱人人爱人人操| 色97欧美| 黑人天8A∨高清网站| 国产亚洲精品av一区| 后入式999| 色婷婷综合久久久久中文国产精品一区中文字幕,国产福利电影一区二区三区 | 视频在线观看青青99国产| 久久ww| 黄色免费网| 欧美色图自拍| 国产日韩精品一区二区三区| 蜜乳AV一区二区三区四| 91在线视频国产网站| 福利天堂| 久久精品一区二区三区不卡| 亚洲天堂人妻熟妇视频| 国产精品福利视频| 欧美激情亚洲情色| 久久啊啊啊| 少妇500双飞99| 欧美日韩啪啪电影| 久久97精品久久久久久久不卡| 黑丝91视频| 试看日韩黄片| 女人精品内射国产99| 欧美一区二区三区黄色影视| 极品色社| 国产精品视频精品一二| 国产99精品一区二区三区免费| 91中文字幕制服丝袜免费视频| 日日骚 av| 狂操嫩妻视频一区二区三区| 一级久久久久久久久久久 | 亚洲精品国产日韩无码AV永久免| 亚洲一区二区AV| 精人妻无码一区二区三区伊人直播| 婷婷四五区| 国产小黄片在线免费观看| 国产黄色剧情影片麻豆免费播放| 大茄子熟女AV导航| 精彩久久中文| 青操影院| 好屌色综合| 日本精品88888888| 肉丝网站91| 又黑又大又粗| 亚洲少妇色| 99操视频| 色噜噜婷婷| 国产成人无码久久精品| 久久美女福利是上海美女| 亚洲精品官网在线观看| 男女性感激情网站| 无码逼| 乱伦图一区| 国产精品视频麻豆入口| 男人天堂黄片| 色色色色日本| 黄色小视频日本txt| 乱欲一区二区| 911粉嫩人妻| 国产精品探花在线| 国产热RE99久久6国产精品首| 国产男人又猛又粗又爽| 一区二区三区精品久久| 人人扣人人操| 人妻熟女午夜精品在线| AV天天在线观看| 99999精品成人| 久久久穴999| 伊人久久亚洲中文字幕不卡| 日日干男人的天堂| 91热色| 蜜臀Av一区二区三区| 日韩大香蕉AV影片| 伊人网免费视频| 色翁荡息又大又硬又粗又爽| 日日操丁香五月天| 99热精品在线| 北条麻妃99精品青青久久| 熟妇一区二区三区| 亚洲九九视频在线观看| 99少妇| 97免费视频在线观看| 国产精品久久久久无码Av网曝门| 超碰色男人操熟女| 日韩精品一区二区三区色欲| 殴美牲| 午夜福利在线视频1000| 97视频在线免费| 91丨人妻丨国产丨丝袜| 欧美1区二区三区公司| 日本一级二级三级网站| 欧美男人一区| 青青欧美| 欲香欲色| 欧美专区日本专区| 99国内精品| 美日韩一二三区| 久久欧美激情| 欧美丝袜制服久久| 久久久久久久少妇| 精品久久久久成人码免| 操碰97| 中文字幕精品资源在线| 男人的天堂2018.| 伊人午夜福利视频| 牛牛AV人人夜夜澡人人爽| 一区二区三区 日韩欧美| 日韩AV电影网站| 偷拍2020| 浓厚中出中文字幕在线| 激情五月天婷婷| 加勒比AV天堂| 成人精品在线免费视频| 91人妻Pr| 国产性爱欧美性爱在线| 亚洲国产精品无码AV久久| 日韩一级免费性爱| 日韩资源网| 国产 日韩,欧美 自拍| 亚洲精品乱码久久久久久蜜桃麻豆| 嗯嗯嗯嗯啊啊啊好紧好大| 亚洲人人夜夜澡人人爽| 中文字幕高清精品一区| 五月综合激情| 亚洲双插| aⅴ日韩成人电影av在线免费看av大全 | 亚洲欧洲第二视频在线观看色图| 极品国产内射| 男人夜色天堂ss| 99超碰网| av凤凰久久久| 日韩丨制服丨中文|在线| 性爱视频免费网址| 欧洲乱码一区二区| 热思思免费视频| 夜夜操2028| 欧洲视频在线| 狠狠操狠狠插| 韩日欧亚a级| 九九久久精品| 亚洲天堂电影网99999| 黄色小视频日本txt| 欧美日韩人妻婷婷一区| 国产精品ⅴ无码大片在线看.| 久久久不能久久久久| 欧美亚洲高清| 高清不卡一二三区视频......| 性91| 欧美专区第一页| 欧美一区二区三区不卡高清视频| 好吊色在线观看| 久久午夜色播影院免费高清| 天天欧美色| 色99999| 亚洲中文字幕乱码无码一区二区| 日本操逼视频免费| 亚洲日韩青青草色月| 久综合国内精品自在自线| 欧美A√综合网| 搡老女人老妇女AAA一VU麻豆| 精品一区二区三区四区外站| 天天色综亚洲91污| 熟女熟妇一区二区三四区| 五月天激情小说| 九九九久久久| 欧美白嫩女HD| 女同性恋久久| 色五月av| 久久久久久波多野吉衣高潮| 粉嫩粉嫩一区性色AV片| 国产一线二线三线av| 欧美制服另类丝袜| www.yeyecao| 欧美极品少妇| 黄污污污污| 另类TS人妖一区二区三区| 啊啊啊好疼| 开心五月婷婷| 国产又黄又爽又刺激久久久久久| 国产日产欧产美韩系列麻豆免费| 五月激情在线| 欧美日韩另类在线| 精品美女少妇一区二区| 日本熟人妻中文字幕在线|...久久国产精品-国产精品_日本一区二区三区中文字幕 | 天天日天天舔东京热 | 91人妻久久久久久久久久久久久| www.婷婷| 密乳AV免费观看| 欧洲视频在线| 亚洲色资源| 农村妇女一级二级三级视频| 亚洲国产高清福利视频| 99精品久久久久久久婷婷| 五十路二区在线| 一本一道波多野毛片中文在线| 大香蕉欧美日韩| 在线中文字幕极品av| 好爽免费视频| 日日噜噜夜夜久久亚洲一区二区 | …中文字幕亚洲乱,97人妻无码费视…| 亚洲欧洲综合视频在线| 久久超碰国产一区二区三区| 噜噜瑟| 久久av网| 久久久草成人网站久久久草成人久久久草久久久 | 日操粉逼逼| 天堂v无码免费视频| 亚欧操逼片在线观看| 中文有码第五页| 九九伊人网| 乱伦av.com| 亚洲日本激情| 97免费在线视频| 久久东京热成人| 天天综合网~91综合网| 欧美午夜色妇色鬼| 97超级久久强资源| 亚洲天堂久久| 国产精品免费视频人成| 欧美aaaaaaa| 为用户提供免费看黄网址在线观看| 美女91AV| 好涩综合| 国产白丝网站| 91精品国| 青青操日韩| 欧美体内射精| 好爽免费视频,| 骚逼一区二区| 国产成自自拍在线观看| 欲色影视综合吧| 午夜男人天堂| 麻豆黄色五月天| 日韩另类色图| 欧美成人9797| 99热超碰| 污到发麻的视频 国产| 东京热激情视频一二三区| 色色丁香| 射 色综合| 久草成人福利导航| 91原创在线观看| 中日无幕一二三四区| WWW4虎| 粘花网06av视频| 欧美九九99久久精品| 97色插| 亚洲精品色| 操人妻逼91| 夜夜福利| 91少妇通奸网站| 91熟女视频网| 日韩精品午夜操呦呦不卡影院| 人人操人人摸超碰| 国产精品99999| 日日干天天干夜夜爽| 影音先锋每日最新资源在线观看| 无码外流操逼视频| 国产女人操逼视频| 性一交一乱一交A片久久四色| 色五月综合网| 亚洲91av| 久草综合视频| 日本久久久久久久久久| 国产精品扒开腿做爽爽爽视频| 大香蕉欧美| 自拍偷拍亚洲熟女妇人精品| 精品一啪| 920日本午夜免费| 欧美老妇综合网| 黑人干亚洲| 欧美人妻制服| 18禁在线视频| 久久一级无码精品毛片6| 色婷婷99| 久久精9| 97爱爱官网| 亚洲网站一区二区在线| 欧美欲色| 91欧美色| 四虎影院成年人片| 3571色综合一区二区二区| 操穴国产| 1024午夜激情男人的天堂| 安徽熟妇视频| 日韩精品资源专区二区| 亚洲人妻一区二区三区| 欧美亚洲高清不卡| 女人高潮大叫一级毛片| 大香蕉伊人75| 综合久久六月久久婷婷| 欧美乱欲| 国产高清在线观看欧美| 亚洲成人av色网| 91天美传媒在线观看| 99在线精品视频| 国产精品久久久无码AV网站| 亚洲天堂东京热| 青青草一区二区三区四| 女人与公拘交酡2020视频| 欧美性爱系列| 久操九九九九九九九九九九九九九九九九九九九九九九九九九九九九 | 歐美一級亂黃99在綫精品| 蜜桃臀久久| 91香蕉视频在线观看免费| 狠狠久久亚洲欧美专区| 97热视频在线观看| 国模私拍一区二区三区神乳| 欧美九9 9 9| 亚洲欧美视| 亚洲第一狼人丝袜美女另类| 欧美久久婷| 夜夜躁狠狠躁日日躁av| 凸凹视频在线观看| 91少妇香蕉久久精品| 国产无码精品成人| 韩国一区二区精品亚洲| 日韩99999| 国产女人成人精品视频| 美国三级日本三级久久99| av在线播放国产一区| 日本天天吊| 日韩猛交| 亚洲少妇色| 91熟女丨91老女人| 伊人激情| 久久香蕉国产线看观看亚洲女人 | 天堂69亚洲精品中文字| 久久99综合| 疯操AV| 久久人人舔人人爽舔人人av片| 大香蕉中文aV在线| 亚洲无码偷拍| http://qxhbdz.com| 欧美性性性| 综合熟女| 亚洲久久久久| 亚洲。日韩。欧美| 91狠狠| 婷婷三区| A级国产欧美激情在线| 日韩伦理视频| 四虎午夜影院| 中文字幕第95页| 国产 丝袜 欧美中文 另类| 欧亚日本情色| 五月婷婷啪啪| 啊啊啊想要| 国产suv精品一区二区四| 97视频在线免费观看| 嗯嗯,啊啊,国产精品| 一区二区三区美女超清| 久久精品老司| 久久亚洲AV无码专区首页| 国产99999久久精品| 国人欧美精品一区二区| 亚洲欧美综合网| 中文字幕精品一区二区精品| 国产捆绑一区| 国产十八禁视频| 亚洲乱码国产乱码精网站| 色97国产69香蕉| 99热这里| 亚洲性爱乱操x| 久湿久久| 狠狠久久亚洲欧美专区| 国产无码精品久久久久久| surenchaopeng| 99ri在线视频| 1769一区| 国产日韩中文字幕欧美| 射 色综合| 黄色片一区二区三区四区五区| 校园春色家庭伦理欧美激情| 99综合网| 国产乱伦性爱区| 久久久久久久久9| 亚洲A色| 久久草在线综合视频| 久久久少妇| 欧美色图人妻| 国产精品老熟女一区二区| 欧美一区二区三区入口| 农村少妇久久久久久久| 97亚洲资源| 国产成人综合网| 亚洲成人在线高清| 欧美碰碰综合色| 蜜臀色乳| 黄色高清无码无码破解免费暗网 | 国产AV天美| 最近的最新的中文字幕视频| 欧美性爽xyxOOOO| 激情四射婷婷六月天| 欧美嗯啊……在线观看视频免费| 精品视频免费在线一区| 丰满人妻-区二区三区免费看| 中文字幕版| 91色久| 2019久久久久久久久福利| 欧美在线天堂| 超碰精品人妻狠狠干| 嗯~啊~快点 死我视频| 九九RE视频在线精品| 亚洲精品国产熟女| 欧美成人一级麻豆| 国产精品一区二区三区在线| 二三四区精品| 色老汉色| 欧州色图区| 久久五月天婷婷| 人人摸人人添人人操| a片在线播放| 91丝袜美女视频| 亚州五月| 97欧美久久久久久久| 欧美A√综合网 | 999国产精品999| 国产自产自拍| 日韩乱伦AⅤ| 免费视频在线一区二区不卡| 国产精品扒开腿做爽爽爽视频| 日韩电影中文字幕| 亚州色阁| 九九国产热| 欧美A√综合网 | 97色色国产视频| 国产精品久久久久久夜夜夜| 亚洲有码 视频一区| 爽爽淫人网| 日va操| 骚妻少妇精品性色无码四色A V| 蜜臀av中字字幕网站| 色久桃花影院在线观看| 无码精品啪啪啪一区二区三区三州| 2001天天操| 国产a级午夜毛片| 国产AV无码AV| 国产 v乱码一区二| 一起草精品人妻| 欧洲熟妇xxXx欧美老妇裸体| 人妻激情偷乱视三区频一区二区| 欧美性爱三区二区| 国产精品免费美女视频| 日本高清_区二区三区| 91社操逼| 日韩一级免费性爱| 国产一级αv免费看片| 天天天天天干夜夜夜夜夜操| 中文字幕性感少妇av| 国产超碰人人操| www.色婷婷.com| 国产按摩一区二区三区| 97色插| 盗摄 精品 另类 一区| 啊啊啊啊啊啊啊国| 97久久精品国产| 在线情色电影 91大 | 亚洲图片欧美色| 91福利网在线观看| 人妻啪| 91三级理论片播放器| 90后性网国产欧美| 久久久久精| 91精品丝袜久久久久久无码人妻| 日韩精品操少妇| 91超碰丝袜制服| 国产精品网址| 午夜a成v人电影| 亚洲精品亚洲人成在线麻豆| 久99热| 亚洲精品天天影视综合网| 超碰538| 久久国产精品m码| 精品无码一区二区三区| 国产真实野战在线视频| www.夜夜| 1204av韩国| 91色夜| 99久久久久久亚洲精品不卡| 国产 无码 一区二区| 又大又白奶子| 欧美91网站| 日韩色香| 岛国黄| 97天天爽| 91无摭挡| 日韩欧美亚洲自拍偷拍| 激情综合网五月婷婷五月天| 日韩pv中文| av草草在线电影| 免费试看60秒| 国产精品久久久久久 百度| 超碰97欧美在线| 天天干1区2区在线| 亚洲影院365| 91粉嫩萝控精品福利网站_精品影音先锋国 | 嫩草美女久久| 激情五月综合| 欧美在线色| 乱伦熟女论坛| 五月综合视频| 少妇激情AV| 成人无码在线视频网站| 夜夜爽33333| wuyechaopeng| 人人操人人舒服| 人妻少妇精品一区二区三区| 日韩大香蕉精品在线视频| 亚洲欧美日韩免费观看| 99无码视频| 亚洲精品国产熟女久久久| 国模无码人体一区二区三| 免费精品99| 久热精品在线| 久久久国产亚洲精品系列| 白丝AV网站| 亚洲美女AV无码| 天天爽天天干| 春色综合免费| 青娱乐国产盛宴视频| 亚洲蜜臀懂色| 99婷婷一区二区| 理论久久婷婷网 8| 97亚洲精品超碰| 欧美精品自慰系列寂寞少妇| 欧美精品三区| 久久久久久一日韩字幕无码| 一二三啪啪专区| 国产精品美女| 亚洲色图激情小说| 少妇色| 国产久久一区二区午夜| 亚洲在线91| 五月天啪啪| 97久久久久| 欧州一区二区三区四区| www色婷婷| 超碰色老头| 九九九九九九成人| 性91| 亚洲丝袜二区| 中文字幕乱妇免费视频| 91操操| 欧美 亚洲精品首页| 婷婷综合激情| 变态综合色| 亚洲一区二区麻豆影院| 国产久久久久久| 九九热免费国产视频婷婷伊人五月 | 超碰欧美| 日韩AV一区二区三区三州三州| 亚洲自拍偷拍视频在线| 97se综合网| 久久性爱精品一区| 亚洲资源网| av天堂手机版追回| 日夜精品| 91N五十路| 人妻啪| 久艹99| 开心五月婷婷激情| a'v在线资源| 亚洲免费97免费| 国产 无码 一区二区| 亚州,欧美在线| 色穴精品| 91在线超高颜值国产| 精品二区三四区五电影 | 精品一区二区三区四区女| 日本三级一区二区 在线| 婷婷五月天色网| av中文字幕在线熟女| 亚洲高清无毛一区二区| 欧美黑人极品高潮喷吹熟女黑人性暴力日韩在线欧美极品一区二区老师 | 亚欧中文字幕在线视频| 国产三级多多影院2022国产AA一级毛片无码| 久久成人午夜狠狠| 天天综合网~69| 操逼大黄片| 欧美色91| 91伊人大香蕉| 欧美日韩第一页| 人人干人人操人人爱| 97超碰影音| 午夜天堂精品久久| 婷婷视频网| 亚洲图片色图欧美另类| 欧洲视频在线| 久久色一区二区| 天天综合色| 欧美大香蕉同搞| 日本精品五区| 欧美色图在线视频少妇| 人妻夜夜爽天天爽麻豆三区网站 | 天堂av最新电影网| 青青草精玖玖69精品| 看一级黄色视频| 国产亚洲日韩欧| 91丰满| WWW美腿丝袜香蕉中文| 暖暖精品二区三区观看| 婬女免费一二三区A片| 翔田千里爆乳巨臀无码| 上床啊啊啊| 91AV天美在线视频| 啊啊啊好湿久久| 亚洲男人天堂av| 中文字幕一区av| 欧美图片校园春色| 蜜臀无码视频在线观看| 91九色丰满高潮| 蜜桃不卡一区二区| 九九热精品在线| 色综合色色| 久久精品店| 国产精品无码成人精品| 国产三级片在线观看| 青青草女人天天干| 亚洲男人的天堂网| 欧美性暴力猛交XXXX| 鲁鲁色综合网| 日韩中文字幕二区| 国产精品久久久久久片| 国产精品探花色| 性无码专区2020| 男人的天堂 在线一区| 葡萄牙性视频一二区| 97爱爱官网| 91模特在线观看| 91精品操美女| 久操影视| 亚洲资源网| #NAME?| 神马久久69| 国产精品视频播放| 操逼精品视频| 美骚妇av高清在线| 欧美亚洲日韩16色| aaa淫乱视频| 欧美日韩亚洲天堂网| 性爱乱伦视频免费| 亚洲欧美国产va在线播放频| 亚洲欧美大| 亚洲国产ⅴ高清在线观看| 神马九九| 亚洲欧美日韩国产丝袜自拍中文| 久久e6只有精品| 亚洲影院小综合| 国产精品色哟哟|