個人使用AI開發的《PlSqlRewrite4GaussDB(PLSQL自動轉換工具)1.0.1 BETA》發布

個人使用AI開發的《PlSqlRewrite4GaussDB(PLSQL自動轉換工具)1.0.1 BETA》發布

前言

基于語法樹的SQL自動改寫工具開發系列(1)-離線安裝語法樹解析工具antlr4
基于語法樹的SQL自動改寫工具開發系列(2)-使用PYTHON進行簡單SQL改寫的開發實戰
基于語法樹的SQL自動改寫工具開發系列(3)-使用JAVA進行簡單SQL改寫的開發實戰

之前我寫過這么幾篇SQL自動改寫的文章,然后我個人也開發了一個針對一些特定場景的ORACLE存儲過程到GaussDB的自動轉換工具
https://gitee.com/darkathena/PlsqlRewrite4GaussDB ,這個工具同時支持在windows和linux上使用,但僅支持使用命令行的方式調用。

20250710起,這個工具停止開發,合并到了https://gitee.com/darkathena/PlsqlRewrite4GaussDB-web,在保留了原本命令行使用方式外,還額外支持了web圖形化使用,鼠標點一點就可以完成,不再需要手敲一堆參數。

這個軟件只有轉換核心里有我手寫的代碼,而web的前端和后端的代碼都是由AI生成的,全靠vibe coding,通過人工測試,反饋BUG和建議給AI,修修補補后看上去完成度還是很高的。

這個軟件主打就是可以自己在轉換邏輯中加入自定義設置(改了設置后要重啟服務),通過多種規則的組合,讓代碼有希望能一步轉換到位。因為如果工具轉換后還要人工改寫,那么改造期間,源端還在進行版本迭代,如果不同時維護兩個分支的代碼,就會導致需要不斷重復進行人工改寫。
另一個特殊點就是,本軟件的轉換核心是一個單獨的jar包,可以單獨用命令行使用,也可以集成到其他工具中去。這也意味著轉換核心是可以單獨替換的,而不用整個項目再重新編譯。

預覽地址 :https://plsqlrewrite.darkathena.top/ (admin/password ,阿里云提供的免費服務器,該地址使用期限截止到20250830)

下面的這個readme也是AI自動生成的。當然界面圖是我自己截的,不過插入圖片是AI自己完成的。

README


PlSqlRewrite4GaussDB

🚀 開源、可自定義的PL/SQL轉GaussDB工具

讓Oracle到GaussDB的PLSQL遷移變得簡單高效

📖 核心模塊文檔 | 🔧 快速開始 | 📋 功能特性


📋 目錄

  • 項目簡介
  • 功能特性
  • 系統架構
  • 快速開始
  • 詳細使用指南
  • 配置說明
  • 開發指南
  • 常見問題
  • 更新日志
  • 貢獻指南
  • 許可證

🎯 項目簡介

PlSqlRewrite4GaussDB 是一款專為國產化改造設計的開源PL/SQL轉換工具,旨在解決Oracle到GaussDB遷移過程中的核心痛點:

🔥 解決的核心問題

問題傳統方案痛點我們的解決方案
語法兼容性原廠工具轉換后仍需手動修改? 內置50+轉換規則,結合自定義轉換規則,代碼轉換把控在自己手中
規則定制無法自定義轉換規則? 靈活配置系統,支持自定義規則
版本同步源端更新需重復轉換和手動修改? 自定義規則可覆蓋原廠工具的缺陷,使轉換后不再需要人工修改成為可能
響應速度新語法支持需等待數月? 開源架構,可快速擴展新規則
可被集成無法集成到用戶自己的平臺中? 可以用命令行方式或api方式集成

🌟 核心優勢

  • 🔧 高度可定制:支持語法節點級和正則表達式級自定義規則
  • ? 高性能:支持多線程批量處理,大幅提升轉換效率
  • 🎯 精準轉換:基于ANTLR4語法分析,確保轉換準確性
  • 🔄 持續更新:開源架構,支持快速響應新需求
  • 📊 可視化界面:提供完整的Web管理界面

🚀 功能特性

核心轉換能力

🔄 語法轉換
  • 數據類型映射PLS_INTEGERINTEGERCHARVARCHAR2
  • 函數替換SYS_CONTEXTpg_current_sessid()
  • 關鍵字處理:自動添加 AS關鍵字避免沖突
  • 異常處理RAISE_APPLICATION_ERRORREPORT_APPLICATION_ERROR
🎯 高級功能
  • 動態SQL處理:支持 EXECUTE IMMEDIATE動態SQL轉換
  • 游標優化:自動移除不必要的 SELECT INTO
  • 性能優化TABLE()函數優化、連接條件優化
  • 字符集處理:支持全角/半角字符自動轉換
?? 配置系統
  • 映射文件:支持數據類型、函數、異常等映射配置
  • 正則規則:支持自定義正則表達式替換
  • 查詢塊替換:支持基于哈希值的整段SQL替換
  • 參數模板:支持批量參數配置

技術架構

┌─────────────────┐    ┌─────────────────┐    ┌─────────────────┐
│   前端界面      │    │   后端服務      │    │   轉換核心      │
│   (Vue.js)      │?──?│  (Spring Boot)  │?──?│   (ANTLR4)      │
│                 │    │                 │    │                 │
│ ? 項目管理      │    │ ? REST API      │    │ ? 語法解析      │
│ ? SQL轉換       │    │ ? 用戶認證      │    │ ? 規則轉換      │
│ ? 批量處理      │    │ ? 文件管理      │    │ ? 配置管理      │
└─────────────────┘    └─────────────────┘    └─────────────────┘

🏗? 系統架構

模塊組成

PlSqlRewrite4GaussDB/
├── 📁 src/                    # 轉換核心模塊
│   ├── 📁 main/java/         # 核心轉換邏輯
│   ├── 📁 test/              # 單元測試
│   └── 📁 resources/         # ANTLR4語法文件
├── 📁 webapp/                # 后端服務模塊
│   ├── 📁 controller/        # REST API控制器
│   ├── 📁 service/           # 業務邏輯服務
│   └── 📁 model/             # 數據模型
├── 📁 frontend/              # 前端界面模塊
│   ├── 📁 src/               # Vue.js源碼
│   └── 📁 public/            # 靜態資源
└── 📁 config/                # 配置文件目錄├── 📄 *.properties       # 各種映射配置└── 📄 *.yaml            # 高級規則配置

image-psbx.png

Web端項目列表界面預覽

技術棧

模塊技術棧版本
轉換核心Java + ANTLR4Java 11+, ANTLR4 4.13.2
后端服務Spring Boot3.2.5
前端界面Vue.js + Element PlusVue 3.5.17
數據庫SQLite3.45.1.0

🚀 快速開始

環境要求

  • Java: JDK 17+ (推薦JDK 17)
  • Node.js: 16+ (僅前端開發需要)
  • Maven: 3.6+ (可選,轉換核心支持離線構建)

一鍵構建

# 克隆項目
git clone https://gitee.com/darkathena/PlsqlRewrite4GaussDB-web.git
cd PlsqlRewrite4GaussDB-web# 一鍵構建所有模塊
./build_full_release.sh    # Linux/Mac
build_full_release.bat     # Windows

快速啟動

# 進入release目錄
cd release# 啟動服務
./start_server.sh          # Linux/Mac
start_server.bat           # Windows

訪問 http://127.0.0.1:8080,使用默認賬號 admin/password 登錄。

docker 鏡像構建和容器創建

docker build -t plsqlrewrite4gaussdb:1.0.0-beta .
docker run --name plsqlrewrite4gaussdb-1.0.0-beta -d -p 8080:8080 plsqlrewrite4gaussdb:1.0.0-beta

📖 詳細使用指南

1. 命令行使用

單文件轉換
# 基本轉換
java -jar plsql-rewriter.jar input.sql output.sql# 指定字符集
java -jar plsql-rewriter.jar input.sql output.sql GBK UTF-8# 使用便捷腳本
./convert.sh input.sql output.sql
批量轉換
# 批量轉換(10個并發)
java -jar plsql-rewriter.jar input_dir output_dir 10# 使用便捷腳本
./batch_convert.sh input_dir output_dir 10

2. Web界面使用

登錄界面

image-szak.png

創建項目

image-sqdn.png

image-mgyz.png

項目列表

image-dfls.png

轉換詳情與差異對比

image-lyba.png

image-mpwc.png

在線SQL轉換

image-nqyz.png

項目管理
  1. 創建項目:設置項目名稱和描述
  2. 上傳文件:支持單個或批量上傳SQL文件
  3. 執行轉換:一鍵轉換所有文件,可在線對比差異
  4. 在線轉換:粘貼SQL直接轉換
轉換配置
  • 基礎配置:數據類型映射、函數替換等
  • 高級配置:正則表達式規則、查詢塊替換等

?? 配置說明

核心配置文件

├─config                          # 配置文件目錄
│  ├─add_func_into_pkg        # 對指定package增加自定義函數
│  ├─replace_func_into_pkg        # 對指定package替換自定義函數
│  ├─query_block_hash_map        # 基于哈希值的查詢塊替換配置
│  ├─atom_mapping.properties      # 字段函數轉換配置
│  ├─config.properties           # 通用配置
│  ├─datatype_mapping.properties # 數據類型映射
│  ├─dynamic_sql.yaml # 動態SQL替換規則
│  ├─exception_mapping.properties # 異常名稱映射
│  ├─general_element_mapping.properties # 函數表達式映射
│  ├─patterns.yaml              # 正則替換規則
│  ├─query_block_mapping.properties # 查詢塊規則
│  ├─regular_id_mapping.properties # 標識符映射
│  ├─token_mapping.properties    # 詞法標記映射
│  └─udtlist.properties         # 自定義類型列表

配置示例

# config.properties
tablefunctionreplace=unnest
ownerconvert=schema
convert_table_of_ele_to_select=true# datatype_mapping.properties
PLS_INTEGER=INTEGER
NUMBER=NUMERIC
LONG=TEXT
# patterns.yaml
rules:- pattern: for\s*(\w*)\s*in\s*(\w*)\.first\s*\.\.\s*\w*\.last replacement: for $1 in 1..$2.count

🛠? 開發指南

環境搭建

# 1. 構建轉換核心
mvn clean package# 2. 構建后端服務
cd webapp
mvn clean package# 3. 構建前端界面
cd frontend
npm install
npm run build

測試框架

# 運行所有測試
mvn test# 運行特定測試
mvn test -Dtest=PlSqlRewriterTest#testBasicConversion# 手動測試
./convert.sh test.sql output.sql
./compare.sh output.sql expected.sql

? 常見問題

Q: 轉換后的SQL仍有語法錯誤怎么辦?

A: 檢查配置文件中是否有遺漏的映射規則,或使用正則表達式規則進行兜底處理。

Q: 如何添加新的數據類型映射?

A: 在 config/datatype_mapping.properties 文件中添加映射關系,格式為 源類型=目標類型

Q: 批量轉換時內存不足怎么辦?

A: 減少并發數量,或分批處理文件。

Q: 如何自定義函數替換規則?

A: 根據場景,使用token_mapping.properties或atom_mapping.properties或general_element_mapping.properties或patterns.yaml。

Q: 轉換性能如何優化?

A: 使用批量轉換模式,合理設置并發數,避免處理過大的單個文件。

💡注意事項

  1. 本項目輸入的SQL文件需要滿足在sqlplus中可執行的SQL格式,若語法解析錯誤則直接失敗
  2. 本項目轉換規則未覆蓋ORACLE的所有語法規則,且部分默認自定義配置選項并非是所有場景的等價轉換規則,請自行調整規則
  3. 多個規則之間起沖突可能導致轉換失敗,請自行調整規則

📝 更新日志

v0.0.0 (2024-11-28)

  • ? 初始版本發布
  • 🚀 支持50+核心轉換規則
  • 🔧 靈活的配置系統
  • ? 高性能批量處理

v1.0.0 (2025-07-11)

  • 🎨 完整的Web管理界面

🤝 貢獻指南

我們歡迎所有形式的貢獻!

貢獻方式

  1. 報告問題:在GitHub Issues中報告bug或提出建議
  2. 提交代碼:Fork項目并提交Pull Request
  3. 完善文檔:幫助改進文檔和示例
  4. 分享經驗:分享使用經驗和最佳實踐

開發流程

  1. Fork項目到你的Github賬戶
  2. 創建功能分支:git checkout -b feature/your-feature
  3. 提交更改:git commit -am 'Add some feature'
  4. 推送分支:git push origin feature/your-feature
  5. 提交Pull Request

代碼規范

  • 遵循Java代碼規范
  • 添加適當的注釋和文檔
  • 確保所有測試通過
  • 更新相關文檔

📄 許可證

本項目采用 MIT License 開源許可證。

🙏 致謝

感謝以下開源項目的支持:

  • ANTLR4 - 強大的語法解析器生成器
  • Spring Boot - 企業級Java框架
  • Vue.js - 漸進式JavaScript框架
  • Element Plus - Vue 3組件庫

如果這個項目對你有幫助,請給我們一個 ? Star!


源碼分析

deepwiki是一個免費(20250818還是免費的,后面不保證)的源代碼分析工具,只需要把github倉庫鏈接的github.com換成deepwiki.com,即可對源代碼進行分析,第一次會需要等十分鐘左右才能生成。

這次我就用deepwiki對源代碼進行了分析
https://deepwiki.com/Dark-Athena/PlsqlRewrite4GaussDB-web

只是deepwiki生成的mermaid圖似乎有些符號不對,沒有顯示出來,需要手工修正錯誤的雙引號和反引號,但也大差不差了。
另外,我又用copilot開發了一個從deepwiki導出成docsify雙語站點的工具:
https://gitee.com/darkathena/py-deepwiki2docsify

PS E:\gitee\py-deepwiki2docsify> python deepwiki2docsify.py --multilingual -o docs https://deepwiki.com/Dark-Athena/PlsqlRewrite4GaussDB-web
🚀 DeepWiki 到 Docsify 轉換器 - 修復版本
==================================================
🌐 多語言模式:將生成中英文雙語文檔
2025-08-18 15:33:31,913 - INFO - 🔄 第 1/3 次嘗試啟動 Selenium WebDriver...
2025-08-18 15:33:31,913 - INFO - 🔄 第 1 次嘗試啟動 Microsoft Edge WebDriver...
2025-08-18 15:33:31,914 - INFO - ====== WebDriver manager ======
2025-08-18 15:33:32,984 - INFO - Get LATEST edgedriver version for Edge 139.0.3405
2025-08-18 15:33:33,010 - WARNING - 無法下載EdgeDriver: Could not reach host. Are you offline?
[15908:57408:0818/153333.740:ERROR:components\edge_ess\vbs_encoder.cc:100] LoadEnclaveImageW failed, error code 577DevTools listening on ws://127.0.0.1:51519/devtools/browser/0fd6194b-c352-49af-ac89-f3776f9cdc91
[15908:57408:0818/153333.923:ERROR:components\edge_auth\edge_auth_errors.cc:535] EDGE_IDENTITY: Get Default OS Account failed: Error: Primary Error: kImplicitSignInFailure, Secondary Error: kAccountProviderFetchError, Platform error: 0, Error string: [empty][15908:50264:0818/153333.957:ERROR:chrome\browser\importer\edge_china_browsers\edge_qqbrowser_importer_utils_win.cc:198] QQBrowser profile preference file doesn't exist
[61304:62768:0818/153334.359:ERROR:net\socket\ssl_client_socket_impl.cc:928] handshake failed; returned -1, SSL error code 1, net_error -101
[61304:62768:0818/153334.430:ERROR:net\socket\ssl_client_socket_impl.cc:928] handshake failed; returned -1, SSL error code 1, net_error -101
[61304:62768:0818/153334.507:ERROR:net\socket\ssl_client_socket_impl.cc:928] handshake failed; returned -1, SSL error code 1, net_error -101
[61304:62768:0818/153334.581:ERROR:net\socket\ssl_client_socket_impl.cc:928] handshake failed; returned -1, SSL error code 1, net_error -101
2025-08-18 15:33:35,305 - INFO - 🚀 Microsoft Edge WebDriver 已啟動
2025-08-18 15:33:35,305 - INFO - 🚀 開始轉換 DeepWiki 站點: https://deepwiki.com/Dark-Athena/PlsqlRewrite4GaussDB-web
2025-08-18 15:33:35,305 - INFO - 🔄 正在加載頁面(Selenium): https://deepwiki.com/Dark-Athena/PlsqlRewrite4GaussDB-web
2025-08-18 15:33:40,658 - INFO - ? 等待JavaScript執行完成...
2025-08-18 15:33:48,747 - INFO - ? 動態內容已加載
2025-08-18 15:33:48,747 - INFO - 🔍 等待異步內容加載...
2025-08-18 15:34:12,821 - INFO - 📄 獲取頁面源碼: 398885 字符
2025-08-18 15:34:12,878 - INFO - 🔗 發現 GitHub 倉庫: https://github.com/Dark-Athena/PlsqlRewrite4GaussDB-web
2025-08-18 15:34:12,894 - INFO - 🎯 發現 commit SHA: a6954e6f
2025-08-18 15:34:12,894 - INFO - 🎯 提取動態導航數據...
2025-08-18 15:34:12,894 - INFO - 🔍 分析動態導航數據...
2025-08-18 15:34:12,909 - INFO - 🔍 分析頁面中的 72 個鏈接...
2025-08-18 15:34:12,972 - INFO - 🎯 找到序號鏈接: Overview -> 1-overview
2025-08-18 15:34:12,980 - INFO - 🎯 找到序號鏈接: System Architecture -> 1.1-system-architecture
2025-08-18 15:34:12,989 - INFO - 🎯 找到序號鏈接: Key Features -> 1.2-key-features
2025-08-18 15:34:12,998 - INFO - 🎯 找到序號鏈接: Getting Started -> 2-getting-started
2025-08-18 15:34:13,009 - INFO - 🎯 找到序號鏈接: Installation and Deployment -> 2.1-installation-and-deployment
2025-08-18 15:34:13,024 - INFO - 🎯 找到序號鏈接: Command Line Usage -> 2.2-command-line-usage
2025-08-18 15:34:13,034 - INFO - 🎯 找到序號鏈接: Web Interface Guide -> 2.3-web-interface-guide
2025-08-18 15:34:13,044 - INFO - 🎯 找到序號鏈接: Core Processing Engine -> 3-core-processing-engine
2025-08-18 15:34:13,055 - INFO - 🎯 找到序號鏈接: PL/SQL Rewriter Core -> 3.1-plsql-rewriter-core
2025-08-18 15:34:13,064 - INFO - 🎯 找到序號鏈接: Configuration System -> 3.2-configuration-system
2025-08-18 15:34:13,074 - INFO - 🎯 找到序號鏈接: Conversion Rules and Transformations -> 3.3-conversion-rules-and-transformations
2025-08-18 15:34:13,084 - INFO - 🎯 找到序號鏈接: Web Application -> 4-web-application
2025-08-18 15:34:13,093 - INFO - 🎯 找到序號鏈接: Backend API Reference -> 4.1-backend-api-reference
2025-08-18 15:34:13,103 - INFO - 🎯 找到序號鏈接: Frontend Components -> 4.2-frontend-components
2025-08-18 15:34:13,112 - INFO - 🎯 找到序號鏈接: Project Management System -> 4.3-project-management-system
2025-08-18 15:34:13,121 - INFO - 🎯 找到序號鏈接: HTTP Client and Request Handling -> 4.4-http-client-and-request-handling
2025-08-18 15:34:13,132 - INFO - 🎯 找到序號鏈接: Testing Framework -> 5-testing-framework
2025-08-18 15:34:13,142 - INFO - 🎯 找到序號鏈接: Core Engine Tests -> 5.1-core-engine-tests
2025-08-18 15:34:13,152 - INFO - 🎯 找到序號鏈接: SQL Test Cases -> 5.2-sql-test-cases
2025-08-18 15:34:13,162 - INFO - 🎯 找到序號鏈接: GROUP BY and Advanced SQL Tests -> 5.3-group-by-and-advanced-sql-tests
2025-08-18 15:34:13,171 - INFO - 🎯 找到序號鏈接: Development Guide -> 6-development-guide
2025-08-18 15:34:13,181 - INFO - 🎯 找到序號鏈接: Build Process -> 6.1-build-process
2025-08-18 15:34:13,191 - INFO - 🎯 找到序號鏈接: Utilities and Helper Components -> 6.2-utilities-and-helper-components
2025-08-18 15:34:13,209 - INFO - 🎯 找到序號鏈接: Core Processing Engine -> 3-core-processing-engine
2025-08-18 15:34:13,217 - INFO - 🎯 找到序號鏈接: Web Application -> 4-web-application
2025-08-18 15:34:13,227 - INFO - 🎯 找到序號鏈接: Getting Started -> 2-getting-started
2025-08-18 15:34:28,585 - INFO - 🎯 動態提取到 23 個真實文件名映射
2025-08-18 15:34:28,586 - INFO - 🔗 分析導航欄鏈接...
2025-08-18 15:34:28,604 - INFO - 🔗 找到導航鏈接: Overview -> 1-overview
2025-08-18 15:34:28,604 - INFO - 🔗 找到導航鏈接: System Architecture -> 1.1-system-architecture
2025-08-18 15:34:28,604 - INFO - 🔗 找到導航鏈接: Key Features -> 1.2-key-features
2025-08-18 15:34:28,604 - INFO - 🔗 找到導航鏈接: Getting Started -> 2-getting-started
2025-08-18 15:34:28,605 - INFO - 🔗 找到導航鏈接: Installation and Deployment -> 2.1-installation-and-deployment
2025-08-18 15:34:28,605 - INFO - 🔗 找到導航鏈接: Command Line Usage -> 2.2-command-line-usage
2025-08-18 15:34:28,605 - INFO - 🔗 找到導航鏈接: Web Interface Guide -> 2.3-web-interface-guide
2025-08-18 15:34:28,605 - INFO - 🔗 找到導航鏈接: Core Processing Engine -> 3-core-processing-engine
2025-08-18 15:34:28,605 - INFO - 🔗 找到導航鏈接: PL/SQL Rewriter Core -> 3.1-plsql-rewriter-core
2025-08-18 15:34:28,605 - INFO - 🔗 找到導航鏈接: Configuration System -> 3.2-configuration-system
2025-08-18 15:34:28,606 - INFO - 🔗 找到導航鏈接: Conversion Rules and Transformations -> 3.3-conversion-rules-and-transformations
2025-08-18 15:34:28,606 - INFO - 🔗 找到導航鏈接: Web Application -> 4-web-application
2025-08-18 15:34:28,606 - INFO - 🔗 找到導航鏈接: Backend API Reference -> 4.1-backend-api-reference
2025-08-18 15:34:28,606 - INFO - 🔗 找到導航鏈接: Frontend Components -> 4.2-frontend-components
2025-08-18 15:34:28,606 - INFO - 🔗 找到導航鏈接: Project Management System -> 4.3-project-management-system
2025-08-18 15:34:28,606 - INFO - 🔗 找到導航鏈接: HTTP Client and Request Handling -> 4.4-http-client-and-request-handling
2025-08-18 15:34:28,606 - INFO - 🔗 找到導航鏈接: Testing Framework -> 5-testing-framework
2025-08-18 15:34:28,607 - INFO - 🔗 找到導航鏈接: Core Engine Tests -> 5.1-core-engine-tests
2025-08-18 15:34:28,607 - INFO - 🔗 找到導航鏈接: SQL Test Cases -> 5.2-sql-test-cases
2025-08-18 15:34:28,607 - INFO - 🔗 找到導航鏈接: GROUP BY and Advanced SQL Tests -> 5.3-group-by-and-advanced-sql-tests
2025-08-18 15:34:28,607 - INFO - 🔗 找到導航鏈接: Development Guide -> 6-development-guide
2025-08-18 15:34:28,607 - INFO - 🔗 找到導航鏈接: Build Process -> 6.1-build-process
2025-08-18 15:34:28,607 - INFO - 🔗 找到導航鏈接: Utilities and Helper Components -> 6.2-utilities-and-helper-components
2025-08-18 15:34:28,608 - INFO - 🔗 找到導航鏈接: Core Processing Engine -> 3-core-processing-engine
2025-08-18 15:34:28,608 - INFO - 🔗 找到導航鏈接: Web Application -> 4-web-application
2025-08-18 15:34:28,608 - INFO - 🔗 找到導航鏈接: Getting Started -> 2-getting-started
2025-08-18 15:34:28,608 - INFO - 📋 從導航欄提取到 23 個文件名映射
2025-08-18 15:34:28,608 - INFO - 🔄 合并 23 個動態導航項...
2025-08-18 15:34:28,609 - INFO - 🔍 提取頁面內容...
2025-08-18 15:34:28,631 - INFO - 🔍 分析 88 個腳本標簽...
2025-08-18 15:34:28,649 - INFO - 🎯 使用導航鏈接文件名: Overview -> 1-overview
2025-08-18 15:34:28,656 - INFO - 🎯 使用導航鏈接文件名: System Architecture -> 1.1-system-architecture
2025-08-18 15:34:28,664 - INFO - 🎯 使用導航鏈接文件名: Key Features -> 1.2-key-features
2025-08-18 15:34:28,671 - INFO - 🎯 使用導航鏈接文件名: Getting Started -> 2-getting-started
2025-08-18 15:34:28,677 - INFO - 🎯 使用導航鏈接文件名: Installation and Deployment -> 2.1-installation-and-deployment
2025-08-18 15:34:28,683 - INFO - 🎯 使用導航鏈接文件名: Command Line Usage -> 2.2-command-line-usage
2025-08-18 15:34:28,690 - INFO - 🎯 使用導航鏈接文件名: Web Interface Guide -> 2.3-web-interface-guide
2025-08-18 15:34:28,700 - INFO - 🎯 使用導航鏈接文件名: Core Processing Engine -> 3-core-processing-engine
2025-08-18 15:34:28,710 - INFO - 🎯 使用導航鏈接文件名: PL/SQL Rewriter Core -> 3.1-plsql-rewriter-core
2025-08-18 15:34:28,718 - INFO - 🎯 使用導航鏈接文件名: Configuration System -> 3.2-configuration-system
2025-08-18 15:34:28,726 - INFO - 🎯 使用導航鏈接文件名: Conversion Rules and Transformations -> 3.3-conversion-rules-and-transformations
2025-08-18 15:34:28,732 - INFO - 🎯 使用導航鏈接文件名: Web Application -> 4-web-application
2025-08-18 15:34:28,741 - INFO - 🎯 使用導航鏈接文件名: Backend API Reference -> 4.1-backend-api-reference
2025-08-18 15:34:28,749 - INFO - 🎯 使用導航鏈接文件名: Frontend Components -> 4.2-frontend-components
2025-08-18 15:34:28,758 - INFO - 🎯 使用導航鏈接文件名: Project Management System -> 4.3-project-management-system
2025-08-18 15:34:28,765 - INFO - 🎯 使用導航鏈接文件名: HTTP Client and Request Handling -> 4.4-http-client-and-request-handling
2025-08-18 15:34:28,771 - INFO - 🎯 使用導航鏈接文件名: Testing Framework -> 5-testing-framework
2025-08-18 15:34:28,778 - INFO - 🎯 使用導航鏈接文件名: Core Engine Tests -> 5.1-core-engine-tests
2025-08-18 15:34:28,784 - INFO - 🎯 使用導航鏈接文件名: SQL Test Cases -> 5.2-sql-test-cases
2025-08-18 15:34:28,790 - INFO - 🎯 使用導航鏈接文件名: GROUP BY and Advanced SQL Tests -> 5.3-group-by-and-advanced-sql-tests
2025-08-18 15:34:28,797 - INFO - 🎯 使用導航鏈接文件名: Development Guide -> 6-development-guide
2025-08-18 15:34:28,805 - INFO - 🎯 使用導航鏈接文件名: Build Process -> 6.1-build-process
2025-08-18 15:34:28,812 - INFO - 🎯 使用導航鏈接文件名: Utilities and Helper Components -> 6.2-utilities-and-helper-components
2025-08-18 15:34:28,820 - INFO - 📄 提取到 23 個完整頁面
2025-08-18 15:34:28,820 - INFO - 📋 提取到導航結構: 393 個條目
2025-08-18 15:34:28,820 - INFO - 📋 發現 23 個頁面
2025-08-18 15:34:28,820 - INFO -   - Overview
2025-08-18 15:34:28,820 - INFO -   - System Architecture
2025-08-18 15:34:28,820 - INFO -   - Key Features
2025-08-18 15:34:28,821 - INFO -   - Getting Started
2025-08-18 15:34:28,821 - INFO -   - Installation and Deployment
2025-08-18 15:34:28,821 - INFO -   - Command Line Usage
2025-08-18 15:34:28,821 - INFO -   - Web Interface Guide
2025-08-18 15:34:28,821 - INFO -   - Core Processing Engine
2025-08-18 15:34:28,821 - INFO -   - PL/SQL Rewriter Core
2025-08-18 15:34:28,822 - INFO -   - Configuration System
2025-08-18 15:34:28,822 - INFO -   - Conversion Rules and Transformations
2025-08-18 15:34:28,822 - INFO -   - Web Application
2025-08-18 15:34:28,822 - INFO -   - Backend API Reference
2025-08-18 15:34:28,822 - INFO -   - Frontend Components
2025-08-18 15:34:28,822 - INFO -   - Project Management System
2025-08-18 15:34:28,823 - INFO -   - HTTP Client and Request Handling
2025-08-18 15:34:28,823 - INFO -   - Testing Framework
2025-08-18 15:34:28,823 - INFO -   - Core Engine Tests
2025-08-18 15:34:28,823 - INFO -   - SQL Test Cases
2025-08-18 15:34:28,823 - INFO -   - GROUP BY and Advanced SQL Tests
2025-08-18 15:34:28,823 - INFO -   - Development Guide
2025-08-18 15:34:28,823 - INFO -   - Build Process
2025-08-18 15:34:28,824 - INFO -   - Utilities and Helper Components
2025-08-18 15:34:28,825 - INFO - 📄 創建頁面: Overview -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\1-overview.md
2025-08-18 15:34:28,826 - INFO - 📄 創建頁面: System Architecture -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\1.1-system-architecture.md  
2025-08-18 15:34:28,828 - INFO - 📄 創建頁面: Key Features -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\1.2-key-features.md
2025-08-18 15:34:28,829 - INFO - 📄 創建頁面: Getting Started -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\2-getting-started.md
2025-08-18 15:34:28,830 - INFO - 📄 創建頁面: Installation and Deployment -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\2.1-installation-and-deployment.md
2025-08-18 15:34:28,831 - INFO - 📄 創建頁面: Command Line Usage -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\2.2-command-line-usage.md  
2025-08-18 15:34:28,832 - INFO - 📄 創建頁面: Web Interface Guide -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\2.3-web-interface-guide.md  
2025-08-18 15:34:28,833 - INFO - 📄 創建頁面: Core Processing Engine -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\3-core-processing-engine.md2025-08-18 15:34:28,834 - INFO - 📄 創建頁面: PL/SQL Rewriter Core -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\3.1-plsql-rewriter-core.md   
2025-08-18 15:34:28,835 - INFO - 📄 創建頁面: Configuration System -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\3.2-configuration-system.md  
2025-08-18 15:34:28,835 - INFO - 📄 創建頁面: Conversion Rules and Transformations -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\3.3-conversion-rules-and-transformations.md
2025-08-18 15:34:28,836 - INFO - 📄 創建頁面: Web Application -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\4-web-application.md
2025-08-18 15:34:28,838 - INFO - 📄 創建頁面: Backend API Reference -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\4.1-backend-api-reference.md2025-08-18 15:34:28,839 - INFO - 📄 創建頁面: Frontend Components -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\4.2-frontend-components.md  
2025-08-18 15:34:28,840 - INFO - 📄 創建頁面: Project Management System -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\4.3-project-management-system.md
2025-08-18 15:34:28,841 - INFO - 📄 創建頁面: HTTP Client and Request Handling -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\4.4-http-client-and-request-handling.md
2025-08-18 15:34:28,842 - INFO - 📄 創建頁面: Testing Framework -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\5-testing-framework.md
2025-08-18 15:34:28,843 - INFO - 📄 創建頁面: Core Engine Tests -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\5.1-core-engine-tests.md
2025-08-18 15:34:28,843 - INFO - 📄 創建頁面: SQL Test Cases -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\5.2-sql-test-cases.md
2025-08-18 15:34:28,844 - INFO - 📄 創建頁面: GROUP BY and Advanced SQL Tests -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\5.3-group-by-and-advanced-sql-tests.md
2025-08-18 15:34:28,845 - INFO - 📄 創建頁面: Development Guide -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\6-development-guide.md
2025-08-18 15:34:28,846 - INFO - 📄 創建頁面: Build Process -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\6.1-build-process.md
2025-08-18 15:34:28,847 - INFO - 📄 創建頁面: Utilities and Helper Components -> zh-cn\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\6.2-utilities-and-helper-components.md
2025-08-18 15:34:28,848 - INFO - 📄 創建頁面: Overview -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\1-overview.md
2025-08-18 15:34:28,849 - INFO - 📄 創建頁面: System Architecture -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\1.1-system-architecture.md   
2025-08-18 15:34:28,850 - INFO - 📄 創建頁面: Key Features -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\1.2-key-features.md
2025-08-18 15:34:28,851 - INFO - 📄 創建頁面: Getting Started -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\2-getting-started.md
2025-08-18 15:34:28,851 - INFO - 📄 創建頁面: Installation and Deployment -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\2.1-installation-and-deployment.md
2025-08-18 15:34:28,852 - INFO - 📄 創建頁面: Command Line Usage -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\2.2-command-line-usage.md
2025-08-18 15:34:28,853 - INFO - 📄 創建頁面: Web Interface Guide -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\2.3-web-interface-guide.md   
2025-08-18 15:34:28,854 - INFO - 📄 創建頁面: Core Processing Engine -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\3-core-processing-engine.md   
2025-08-18 15:34:28,855 - INFO - 📄 創建頁面: PL/SQL Rewriter Core -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\3.1-plsql-rewriter-core.md  
2025-08-18 15:34:28,856 - INFO - 📄 創建頁面: Configuration System -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\3.2-configuration-system.md   
2025-08-18 15:34:28,857 - INFO - 📄 創建頁面: Conversion Rules and Transformations -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\3.3-conversion-rules-and-transformations.md
2025-08-18 15:34:28,858 - INFO - 📄 創建頁面: Web Application -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\4-web-application.md
2025-08-18 15:34:28,859 - INFO - 📄 創建頁面: Backend API Reference -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\4.1-backend-api-reference.md   
2025-08-18 15:34:28,860 - INFO - 📄 創建頁面: Frontend Components -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\4.2-frontend-components.md   
2025-08-18 15:34:28,861 - INFO - 📄 創建頁面: Project Management System -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\4.3-project-management-system.md
2025-08-18 15:34:28,862 - INFO - 📄 創建頁面: HTTP Client and Request Handling -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\4.4-http-client-and-request-handling.md
2025-08-18 15:34:28,863 - INFO - 📄 創建頁面: Testing Framework -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\5-testing-framework.md
2025-08-18 15:34:28,864 - INFO - 📄 創建頁面: Core Engine Tests -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\5.1-core-engine-tests.md
2025-08-18 15:34:28,865 - INFO - 📄 創建頁面: SQL Test Cases -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\5.2-sql-test-cases.md
2025-08-18 15:34:28,866 - INFO - 📄 創建頁面: GROUP BY and Advanced SQL Tests -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\5.3-group-by-and-advanced-sql-tests.md
2025-08-18 15:34:28,867 - INFO - 📄 創建頁面: Development Guide -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\6-development-guide.md
2025-08-18 15:34:28,868 - INFO - 📄 創建頁面: Build Process -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\6.1-build-process.md
2025-08-18 15:34:28,868 - INFO - 📄 創建頁面: Utilities and Helper Components -> en\pages\Dark-Athena\PlsqlRewrite4GaussDB-web\6.2-utilities-and-helper-components.md
2025-08-18 15:34:28,869 - INFO - 🌐 生成多語言 index.html...
2025-08-18 15:34:28,870 - INFO - 📋 生成根目錄側邊欄...
2025-08-18 15:34:28,870 - INFO - 📄 生成語言選擇頁面...
2025-08-18 15:34:28,873 - INFO - 📁 生成 中文 版本配置...
2025-08-18 15:34:28,874 - INFO - 📁 生成 English 版本配置...
2025-08-18 15:34:28,874 - INFO - 🌐 多語言文件生成完成
2025-08-18 15:34:34,407 - INFO - 🛑 Selenium WebDriver 已關閉🎉 轉換成功!
📁 輸出目錄: E:\gitee\py-deepwiki2docsify\docs
📄 處理頁面: 23 個📋 項目信息:名稱: Dark-Athena/PlsqlRewrite4GaussDB-web標題: Dark-Athena/PlsqlRewrite4GaussDB-web原始頁面: https://deepwiki.com/Dark-Athena/PlsqlRewrite4GaussDB-web💡 啟動本地服務器:cd docspython -m http.server 3000然后訪問 http://localhost:3000🌍 部署到 GitHub Pages:1. 將 docs 目錄內容推送到 GitHub 倉庫2. 在倉庫設置中啟用 GitHub Pages3. 選擇從根目錄或 docs 目錄部署

再用扣子空間翻譯出了對應的中文版本文件,直接上傳到一個http站點就能正常顯示了。

image-ygue.png

image-sjwq.png

源碼分析文檔已經上傳到我的個人博客站點:
https://www.darkathena.top/PlsqlRewrite4GaussDB-web-wiki/index.html

同時也上傳到了github和gitee的wiki

https://github.com/Dark-Athena/PlsqlRewrite4GaussDB-web/wiki/1-overview

https://gitee.com/darkathena/PlsqlRewrite4GaussDB-web/wikis/1-overview

image-aevp.png

有點高大上的感覺了,順手截了幾個圖

image-gzxt.png

image-wchx.png

image-ysxk.png

image-jrhl.png

image-apjo.png

image-jfry.png

image-ymve.png

image-omqb.png

不過deepwiki生成的似乎并完全不正確,比如它說我這個程序的配置文件支持熱加載,但這功能我就還沒做。所以這個源碼分析就圖一樂吧,大概就這么回事,細節不能深究…

Docker鏡像構建

docker 鏡像構建腳本也是AI生成的

image-qqum.png

不過我還是手動做了一些優化,比如使用多階段構建來減少鏡像大小,以及規避了apt-get命令下載依賴包可能由于網路問題下載不到的問題。

打包工作流

自動打包工作流也是AI自動生成的

image-iuek.png

不過由于還不算正式版本,我修改成了只能手動觸發。

https://github.com/Dark-Athena/PlsqlRewrite4GaussDB-web/blob/Dark-Athena-patch-1/.github/workflows/main.yml

總結

  1. 本軟件并未覆蓋全量的改寫規則,僅對部分語法點做了可自定義修改的配置入口,默認的改寫規則個數肯定不如原廠工具。但其價值在于給PL/SQL轉換到GaussDB提供了一種新的可集成自定義規則的路徑。原廠轉換工具為了通用,只做絕對的等價改寫,遇上不能等價改寫的就保持原樣了,而實際上客戶知道自己的代碼應該要怎么人工改寫能符合原本的業務含義,此時一個可以配置自定義規則的工具就有了用武之地。
  2. 現在AI的能力真的能替代很多工作了,只要把清晰的思路告訴AI,是真的可以讓AI幾乎完整地生成企業級的程序的。
  3. 本項目有使用到的AI工具
    • NEW BING (免費,早期沒有AI agent工具時,通過對話的方式,手動給轉換核心一段一段代碼進行開發)
    • Cursor (付費,前后端代碼和ReadMe生成)
    • VSCode copilot(付費,Cursor 斷供后,切換到VSCode進行bug修復;轉換deepwiki生成的源代碼文檔到docsify格式;github打包工作流生成)
    • deepwiki (免費,生成源代碼解析文檔)
    • 扣子空間(免費,翻譯源代碼解析文檔的中文版本,主要是免費,不消耗寶貴的用于開發的token)
    • 天啟 (免費,部分技術點可行性咨詢,避免打斷項目整體思路和token浪費)
  • 本文作者: DarkAthena
  • 本文鏈接: https://www.darkathena.top/archives/plsqlrewrite4gaussdb-1.0.1-beta-release
  • 版權聲明: 本博客所有文章除特別聲明外,均采用CC BY-NC-SA 3.0 許可協議。轉載請注明出處

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/93967.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/93967.shtml
英文地址,請注明出處:http://en.pswp.cn/web/93967.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python的校園研招網系統

前端開發框架:vue.js 數據庫 mysql 版本不限 后端語言框架支持: 1 java(SSM/springboot)-idea/eclipse 2.NodejsVue.js -vscode 3.python(flask/django)–pycharm/vscode 4.php(thinkphp/laravel)-hbuilderx 數據庫工具:Navicat/SQLyog等都可以 摘要&…

如何高效撰寫AI領域學術論文——學習筆記

最開始寫的時候最好仿照著頂會來寫1. 標題(Title)?標題是論文的"門面",需要同時具備簡潔性和信息量:采用"XX方法 for XXX任務"的標準格式,包含核心創新點和應用領域,避免使用模糊詞匯,力求精準&a…

elasticsearch8.12.0安裝分詞

上篇說到,安裝了es后正常運行es分詞下載地址從 GitHub Release 下載(推薦) 👉 https://github.com/medcl/elasticsearch-analysis-ik/releases或https://release.infinilabs.com/analysis-ik/stable/安裝:選擇與你 ES …

強化學習算法分類與介紹(含權重更新公式)

強化學習算法種類豐富,可按學習目標(基于價值 / 基于策略 / 演員 - 評論家)、數據使用方式(在線 / 離線)、是否依賴環境模型(無模型 / 有模型)等維度分類。以下按核心邏輯梳理常見算法&#xff…

基于STM32F103單片機智能門禁熱釋人體感應報警設計

1 系統功能介紹 本設計基于 STM32F103C8T6 單片機,通過多種傳感器、執行器以及通信模塊實現智能門禁和安防報警功能。其主要功能是檢測門外人員情況,結合環境光照強度判斷是否需要照明,同時結合 GSM 模塊在異常情況下發送報警信息&#xff0c…

imx6ull-驅動開發篇33——platform 平臺驅動模型

目錄 Linux 驅動的分離與分層 驅動的分隔與分離 驅動的分層 platform 平臺驅動模型 platform 總線 bus_type 結構體 platform 總線 platform_match函數 platform 驅動 platform_driver 結構體 device_driver 結構體 platform_driver_register 函數 platform_drive…

Win/Linux筆記本合蓋不睡眠設置指南

在 筆記本電腦上,當你合上屏幕時,默認系統可能會進入“睡眠”或“休眠”狀態。如果你希望合上屏幕時系統繼續正常運行(例如后臺下載、運行程序、遠程訪問等),需要修改系統的電源設置。 一、以下是 Windows 10 / Windo…

(棧)Leetcode155最小棧+739每日溫度

739. 每日溫度 - 力扣(LeetCode) while要把stack的判斷放在前面,否則stack[-1]可能報錯 class Solution(object):def dailyTemperatures(self, temperatures):""":type temperatures: List[int]:rtype: List[int]""…

【NLP(01)】NLP(自然語言處理)基礎

目錄NLP基礎一、基本概念1. 自然語言處理的基本介紹1.1 與語言相關的概念1.2 為什么使用NLP2. NLP的應用方向2.1 **自然語言理解**2.2 自然語言轉換2.3 自然語言生成3. NLP基礎概念4. NLP的發展歷史5. NLP的基本流程二、NLP中的特征工程0. 引入1. 詞向量2. 傳統NLP中的特征工程…

Python工程師進階學習道路分析

本文將分為以下幾個核心部分: 心態與基礎重塑:從“會用”到“精通”核心語言深度:窺探Python的奧秘編程范式與設計模式:寫出優雅的代碼并發與異步編程:釋放多核時代的威力性能分析與優化:讓代碼飛起來深入…

IntelliJ IDEA中Maven的“Sync“與“Reload“詳解:小白的避坑指南

在IntelliJ IDEA中使用Maven時,Sync All Maven Projects(同步)和 Reload All Maven Projects(重新加載)是兩個最常用的操作按鈕。它們看似相似,實則承擔著完全不同的職責。本文將通過通俗易懂的對比和場景分…

網絡地址的詳細計算說明

IP地址分類與計算 IP地址分5類A類 :0開頭,適用于大型網絡 B類 :10開頭,適用于中型網絡 C類 :110開頭,適用于小型網絡 D類 :1110開頭,用于組播 E類 : 1110開頭&#xff0c…

人工智能驅動的現代電商前端開發:從基礎到智能體驗

引言:AI如何重塑電商體驗電子商務行業正在經歷一場人工智能革命。從個性化推薦到視覺搜索,從智能客服到預測分析,AI技術正在徹底改變用戶與電商平臺的交互方式。作為前端開發者,了解如何集成AI功能已成為必備技能。本文將帶您深入…

mimic數據統計

是否能聯通 psql -h 127.0.0.1 -U Shinelon-d mimic --password pgadmin建庫 psql -d mimiciv -f mimic-iv/buildmimic/postgres/create.sql 也可以pgadmin直接運行create.sql 導入csv.gz數據 psql -d mimic -v ON_ERROR_STOP1 -v mimic_data_dirH:/mimic-iv-2.2 -f C:\Users\S…

孟德爾隨機化小試 從軟件安裝數據下載到多種檢驗

孟德爾隨機化(Mendelian Randomization, MR)作為一種利用基因數據推斷因果關系的強大工具,在流行病學研究中應用廣泛。本文將詳細講解MR的核心原理、完整分析流程,并附上關鍵代碼實現,幫助你從零開始完成一次MR分析。1…

記一次:postman請求下載文件的使用方法

前言:筆者的后端接口是swagger,遇到像文件導出下載的功能就實現不了。然后使用postman工具就可以了。注:postman工具使用send下拉選項中有請求下載,如圖完美解決。后續有其它方法在補充。

快速搭建項目(若依)

RuoYi-Vue 是一個 Java EE 企業級快速開發平臺,低代碼的框架。 1.環境要求: 其中MySQL和Redis放在服務器上或者本機上。 2.代碼搭建: 代碼下載地址:https://gitee.com/y_project/RuoYi-Vue,在官方文檔里面可下載若依…

iOS開發之UICollectionView為什么需要配合UICollectionViewFlowLayout使用

1. UICollectionView 的職責分離UICollectionView 本質上只是一個容器,用來展示一系列的 cell(單元格)。 它本身 不關心 cell 的擺放方式,只負責:Cell 的復用(避免性能浪費)Cell 的增刪改查滾動…

一、部署LNMP

一、準備環境操作系統:CentOS 7.x(最少 2 核 CPU 2GB 內存 20GB 磁盤)網絡:能訪問公網(用于下載包)軟件版本:Nginx 1.20MySQL 5.7/8.0PHP 7.4WordPress 6.x(商城插件 WooCommerce&…

【時時三省】vectorCAST 便捷使用技巧

山不在高,有仙則名。水不在深,有龍則靈。 ----CSDN 時時三省 目錄 1,工程的共享 2,工程的關鍵文件保存 2,工作環境目錄下,各個文件夾的作用 1,build 和 environment 的區別 2,vcm的作用 3,tst 文件的妙用 4,配置文件的妙用 5,復制測試環境 6,vectorCAST…