Cursor生成Java的架構設計圖

文章目錄

  • 整體說明
  • 一、背景
  • 二、前置條件
  • 三、生成 Promt
  • 四、結果查看
  • 五、結果編輯

摘要: Cursor生成Java的架構設計圖

關鍵詞: Cursor、人工智能 、開發工具、Java 架構設計圖

整體說明

Cursor 作為現在非常好用的開發工具,非常的火爆,能夠大幅提升工作效率和開發效率,其中就有 Java 的架構設計圖,是真的不想自己畫,這時候大模型工具的作用就可以體現出來了,如下:

一、背景

前面我們已經說了 README 的文件怎么生成了,大概知道了這個工程是怎么使用的,但是我們還是不知道具體模塊的詳細設計,具體流程的模塊依賴關系,還有數據的流向流程圖,想要更加深入地去了解詳細設計,就需要架構設計圖了。

二、前置條件

  • Cursor 安裝和配置

    需要安裝 Cursor 和 配置好相關配置,如果不知道怎么配置,可以參考我的另一篇文章 《Cursor日常配置指南》

  • 工程代碼

    不多說,就是需要使用 Cursor 打開我們工程代碼文件,和 IDEA 差不多,區別就是 Cursor 有一個 Chat 的人工智能聊天窗口,這個就是我們之后,生成文檔的方法

  • 結果查看插件安裝

    當我們生成我們文檔之后,我們得能打開預覽我們文件,最終結果是帶 Mermaid 的 Markdown 文件,所以需要下載插件 Markdown Preview Mermaid Support,直接在 Cursor 插件里搜索安裝就可以了

  • Draw.io 安裝

    當我們生成的 Mermaid 圖形代碼我們,不滿意,想要自己去編輯的時候,需要使用這個軟件去編輯

三、生成 Promt

如下就是我常用的 Java架構設計生成promt,當然我這個是基于我寫的代碼工程寫的,如果你的代碼工程有自己的特點,可以再修改

# Mermaid工程架構圖生成提示請為我的Spring Boot項目生成一個使用Mermaid語法的架構圖,并以Markdown格式呈現。## 需求說明
1. 使用Mermaid語法創建多個圖表來展示項目的不同架構視圖
2. 所有圖表應嵌入在一個Markdown文件中,標題為"項目名稱模塊架構設計"
3. 圖表應清晰展示組件之間的關系和數據流
4. **重要:確保所有文字使用深色(黑色或深藍色),保證在淺色背景上清晰可見**
5. **圖表中的節點顏色應當使用較淺的填充色,但文字和邊框使用深色,提高對比度**
6. **特別注意:在節點文本中使用換行時,確保使用正確的Mermaid語法**- 在節點文本中,使用 `<br>` 而不是 `\n` 進行換行- 例如:`A[第一行<br>第二行]`,而不是 `A[第一行\n第二行]`- 或者使用Markdown語法 `A["第一行<br/>第二行"]`
7. 為每個圖表添加簡短的說明文字,解釋圖表的目的和內容## 需要包含的圖表類型### 1. 模塊依賴圖
- 使用Mermaid的`graph TD`語法
- 展示項目主要模塊之間的依賴關系和內部組件結構
- 區分主要模塊和內部組件(Controller、Service、Mapper等)
- 展示組件之間的調用關系
- 使用不同形狀和顏色區分不同類型的模塊和組件
- 文字標簽使用深色(黑色或深藍色),確保可讀性
- 樣式定義示例:```classDef module fill:#f9f,stroke:#333,stroke-width:2px,color:#000classDef component fill:#bbf,stroke:#33f,stroke-width:1px,color:#000classDef utility fill:#bfb,stroke:#3f3,stroke-width:1px,color:#000```### 2. 系統部署架構圖
- 使用Mermaid的`flowchart TD`語法
- 展示系統在生產環境中的部署結構
- 包括客戶端、負載均衡器、應用服務器、數據庫、配置中心和外部系統
- 顯示組件之間的網絡連接和通信方式(HTTP請求、REST API、JDBC等)
- 使用不同顏色和樣式區分不同類型的組件
- 樣式定義示例:```classDef client fill:#e7f5fe,stroke:#1da1f2,stroke-width:1px,color:#000classDef server fill:#fcefe3,stroke:#fd8a3f,stroke-width:1px,color:#000classDef db fill:#f0fff0,stroke:#2ecc71,stroke-width:1px,color:#000classDef ext fill:#fcf3e3,stroke:#f1c40f,stroke-width:1px,color:#000classDef infra fill:#f5e8f5,stroke:#9b59b6,stroke-width:1px,color:#000```### 3. 數據流程圖
- 使用Mermaid的`flowchart LR`語法
- 展示數據從數據源到最終存儲的完整流程
- 包括API客戶端、服務層、數據轉換、數據訪問層和數據庫
- 顯示觸發流程的方式(手動觸發或定時任務)
- 樣式定義示例:```classDef external fill:#f9a,stroke:#a86,stroke-width:1px,color:#000classDef process fill:#adf,stroke:#68c,stroke-width:1px,color:#000classDef data fill:#ad5,stroke:#6b4,stroke-width:1px,color:#000classDef storage fill:#bbf,stroke:#99e,stroke-width:1px,color:#000```### 4. 核心業務流程圖
- 使用Mermaid的`sequenceDiagram`語法
- 展示系統中的主要業務流程的時序關系
- 包括客戶端、控制器、服務層、外部API和數據庫等參與者
- 展示完整的調用流程,包括獲取授權、數據處理和結果返回
- 使用loop表示循環處理(如分頁獲取數據)
- 用Note添加額外說明(如支持按日期范圍同步)### 5. 數據庫ER圖
- 使用Mermaid的`erDiagram`語法
- 展示主要數據實體及其關系(一對多、多對多等)
- 包括每個實體的主要字段、主鍵和外鍵
- 使用明確的關系符號(||--o{、}o--o{等)表示實體間關系
- 為每個字段添加類型和簡短描述### 6. 接口調用關系圖
- 使用Mermaid的`flowchart TB`語法
- 展示系統內部各組件間的接口調用關系
- 包括控制器、服務接口、服務實現類、API客戶端和數據訪問層
- 顯示與外部系統和數據庫的交互
- 樣式定義示例:```classDef controller fill:#f9f0ff,stroke:#333,stroke-width:1px,color:#000classDef service fill:#e6f7ff,stroke:#333,stroke-width:1px,color:#000classDef impl fill:#f0f5ff,stroke:#333,stroke-width:1px,color:#000classDef client fill:#fff7e6,stroke:#333,stroke-width:1px,color:#000classDef external fill:#f9f9f9,stroke:#333,stroke-width:1px,color:#000classDef database fill:#f6ffed,stroke:#333,stroke-width:1px,color:#000```### 7. 異常處理流程圖
- 使用Mermaid的`flowchart TD`語法
- 展示系統的異常處理機制和流程
- 包括異常觸發、捕獲、分類處理和恢復機制
- 展示不同類型異常的處理策略(業務異常、系統異常、網絡異常、數據庫異常)
- 樣式定義示例:```classDef normal fill:#f0f5ff,stroke:#333,stroke-width:1px,color:#000classDef decision fill:#fff7e6,stroke:#333,stroke-width:1px,color:#000classDef error fill:#fff1f0,stroke:#333,stroke-width:1px,color:#000classDef recovery fill:#f6ffed,stroke:#333,stroke-width:1px,color:#000classDef response fill:#f9f0ff,stroke:#333,stroke-width:1px,color:#000```### 8. 性能優化設計圖
- 使用Mermaid的`flowchart LR`語法
- 展示系統的主要性能優化策略
- 包括數據庫優化、API調用優化、緩存策略和并發處理等方面
- 展示各優化點的具體技術措施
- 樣式定義示例:```classDef strategy fill:#f9f0ff,stroke:#333,stroke-width:1px,color:#000classDef category fill:#e6f7ff,stroke:#333,stroke-width:1px,color:#000classDef technique fill:#f6ffed,stroke:#333,stroke-width:1px,color:#000```## 格式要求
1. 所有圖表應使用正確的Mermaid語法
2. Markdown文件應包含適當的標題和說明文字
3. 每個圖表前應有簡短的說明,解釋圖表的目的和內容
4. 每個圖表后應有簡短的解釋,說明圖表展示的內容和價值
5. 使用注釋來增強圖表的可讀性(使用`%%`添加注釋)
6. **對于所有圖表,確保:**- 節點填充色使用淺色,便于查看- 文字和邊框使用深色(黑色 `#000` 或深藍色 `#333`),確保可讀性- 箭頭標簽使用深色- 樣式定義中添加 `color:#000` 或 `color:#333` 屬性- **使用 `<br>` 進行文本換行,不要使用 `\n`**
7. 在文檔最后添加總結部分,簡要概括所有圖表的內容和價值## 換行示例
```mermaid
flowchart TDA[單行文本] -->|調用| B["多行文本<br>第二行"]C["控制器<br>Controller"] -->|調用| D["服務層<br>Service<br>業務處理"]
```## 樣式示例
```mermaid
flowchart TDA[模塊A] -->|調用| B[模塊B]%% 樣式定義 - 確保文字為深色classDef default fill:#f9f9f9,stroke:#333,stroke-width:1px,color:#000classDef important fill:#ffe6e6,stroke:#c00,stroke-width:2px,color:#000%% 應用樣式class B important
```請基于項目實際情況創建這些圖表,確保圖表內容準確、完整且易于理解。如果某些信息不足,可以使用合理的假設,但請在說明中注明。最終的文檔應能全面展示系統的架構設計、工作流程和數據關系,幫助開發人員和維護人員理解系統。

四、結果查看

使用 Ctrl + L 打開 Chat 窗口,在 Chat 窗口 如下執行觸發這個文檔生成即可

其中要 @Java架構設計生成promt 和 @工程代碼文件夾,表示引用

生成結果如下,這個是 Mermaid 語法

可點擊右上角預覽呈現結果

五、結果編輯

打開 架構設計.md

找到你不滿意的 mermaid 圖代碼,復制

打開 Draw.io ,并新建一個空白繪圖

然后 依次點擊 調整圖形 -> 插入 -> 高級 -> mermaid ,然后把剛剛復制的 mermaid 圖代碼 放進去

之后就能自由編輯圖形了

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

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

相關文章

1Panel運行的.net程序無法讀取系統字體(因為使用了docker)

問題來源 我之前都是使用的寶塔面板&#xff0c;之前我也部署過我的程序&#xff0c;就沒有什么問題&#xff0c;但是上次我部署我的程序的時候&#xff0c;就提示無法找到字體Arial。 我的程序中使用該字體生成驗證碼。 我多次安裝了微軟的字體包&#xff0c;但是依舊沒有效…

面試總結。

一、回流&#xff08;重排&#xff09;與重繪&#xff08;Repaint&#xff09; 優化回答&#xff1a; 概念區分&#xff1a; 回流&#xff08;Reflow/Relayout&#xff09;&#xff1a;當元素的幾何屬性&#xff08;如寬高、位置、隱藏 / 顯示&#xff09;發生改變時&#xff…

TensorFlow深度學習實戰(20)——自組織映射詳解

TensorFlow深度學習實戰&#xff08;20&#xff09;——自組織映射詳解 0. 前言1. 自組織映射原理2. 自組織映射的優缺點3. 使用自組織映射實現顏色映射小結系列鏈接 0. 前言 自組織映射 (Self-Organizing Map, SOM) 是一種無監督學習算法&#xff0c;主要用于高維數據的降維、…

Go內存泄漏排查與修復最佳實踐

一、引言 即使Go語言擁有強大的垃圾回收機制&#xff0c;內存泄漏仍然是我們在生產環境中經常面臨的挑戰。與傳統印象不同&#xff0c;垃圾回收并不是萬能的"記憶清道夫"&#xff0c;它只能處理那些不再被引用的內存&#xff0c;而無法識別那些仍被引用但實際上不再…

LeetCode刷題 -- 542. 01矩陣 基于 DFS 更新優化的多源最短路徑實現

LeetCode刷題 – 542. 01矩陣 基于 DFS 更新優化的多源最短路徑實現 題目描述簡述 給定一個 m x n 的二進制矩陣 mat&#xff0c;其中&#xff1a; 每個元素為 0 或 1返回一個同樣大小的矩陣 ans&#xff0c;其中 ans[i][j] 表示 mat[i][j] 到最近 0 的最短曼哈頓距離 算法思…

MySQL用戶遠程訪問權限設置

mysql相關指令 一. MySQL給用戶添加遠程訪問權限1. 創建或者修改用戶權限方法一&#xff1a;創建用戶并授予遠程訪問權限方法二&#xff1a;修改現有用戶的訪問限制方法三&#xff1a;授予特定數據庫的特定權限 2. 修改 MySQL 配置文件3. 安全最佳實踐4. 測試遠程連接5. 撤銷權…

如何使用 BPF 分析 Linux 內存泄漏,Linux 性能調優之 BPF 分析內核態、用戶態內存泄漏

寫在前面 博文內容為 通過 BCC 工具集 memleak 進行內存泄漏分析的簡單認知包括 memleak 腳本簡單認知,內核態(內核模塊)、用戶態(Java,Python,C)內存跟蹤泄漏分析 Demo理解不足小伙伴幫忙指正 ??,生活加油知其不可奈何而安之若命,德之至也。----《莊子內篇人間世》 …

谷歌Sign Gemma: AI手語翻譯,溝通從此無界!

嘿&#xff0c;朋友們&#xff01;想象一下&#xff0c;語言不再是交流的障礙&#xff0c;每個人都能順暢表達與理解。這聽起來是不是很酷&#xff1f;谷歌最新發布的Sign Gemma AI模型&#xff0c;正朝著這個激動人心的未來邁出了一大步&#xff01;它就像一位隨身的、不知疲倦…

全生命周期的智慧城市管理

前言 全生命周期的智慧城市管理。未來&#xff0c;城市將在 實現從基礎設施建設、日常運營到數據管理的 全生命周期統籌。這將避免過去智慧城市建設 中出現的“碎片化”問題&#xff0c;實現資源的高效配 置和項目的協調發展。城市管理者將運用先進 的信息技術&#xff0c;如物…

最新Spring Security實戰教程(十七)企業級安全方案設計 - 多因素認證(MFA)實現

&#x1f337; 古之立大事者&#xff0c;不惟有超世之才&#xff0c;亦必有堅忍不拔之志 &#x1f390; 個人CSND主頁——Micro麥可樂的博客 &#x1f425;《Docker實操教程》專欄以最新的Centos版本為基礎進行Docker實操教程&#xff0c;入門到實戰 &#x1f33a;《RabbitMQ》…

logstash拉取redisStream的流數據,并存儲ES

先說結論&#xff0c; window驗證logstash截至2025-06-06 是沒有原生支持的。 為啥考慮用redisStream呢&#xff1f;因為不想引入三方的kafka等組件&#xff0c; 讓服務部署輕量化&#xff0c; 所以使用現有的redis來實現&#xff0c; 為啥不用list呢&#xff1f; 已經用strea…

IEC 61347-1:2015 燈控制裝置安全通用要求詳解

IEC 61347-1:2015 燈控制裝置安全通用要求詳解 IEC 61347-1:2015《燈控制裝置 第1部分&#xff1a;一般要求和安全要求》是國際電工委員會&#xff08;IEC&#xff09;制定的關于燈控制裝置安全性能的核心基礎標準。它為各類用于啟動和穩定工作電流的燈控制裝置&#xff08;如…

26、跳表

在C標準庫中&#xff0c;std::map 和 std::set 是使用紅黑樹作為底層數據結構的容器。 紅黑樹是一種自平衡二叉搜索樹&#xff0c;能夠保證插入、刪除和查找操作的時間復雜度為O(log n)。 以下是一些使用紅黑樹的C標準庫容器&#xff1a; std::map&#xff1a;一種關聯容器&a…

LabVIEW音頻測試分析

LabVIEW通過讀取指定WAV 文件&#xff0c;實現對音頻信號的播放、多維度測量分析功能&#xff0c;為音頻設備研發、聲學研究及質量檢測提供專業工具支持。 主要功能 文件讀取與播放&#xff1a;支持持續讀取示例數據文件夾內的 WAV 文件&#xff0c;可實時播放音頻以監聽被測信…

JUC并發編程(二)Monitor/自旋/輕量級/鎖膨脹/wait/notify/鎖消除

目錄 一 基礎 1 概念 2 賣票問題 3 轉賬問題 二 鎖機制與優化策略 0 Monitor 1 輕量級鎖 2 鎖膨脹 3 自旋 4 偏向鎖 5 鎖消除 6 wait /notify 7 sleep與wait的對比 8 join原理 一 基礎 1 概念 臨界區 一段代碼塊內如果存在對共享資源的多線程讀寫操作&#xf…

Doris 與 Elasticsearch:誰更適合你的數據分析需求?

一、Doris 和 Elasticsearch 的基本概念 &#xff08;一&#xff09;Doris 是什么&#xff1f; Doris 是一個用于數據分析的分布式 MPP&#xff08;大規模并行處理&#xff09;數據庫。它主要用于存儲和分析大量的結構化數據&#xff08;比如表格數據&#xff09;&#xff0c…

使用Virtual Serial Port Driver+com2tcp(tcp2com)進行兩臺電腦的串口通訊

使用Virtual Serial Port Drivercom2tcp或tcp2com進行兩臺電腦的串口通訊 問題說明解決方案方案三具體操作流程網上教程軟件安裝拓撲圖準備工作com2tcp和tcp2com操作使用串口助手進行驗證 方案三存在的問題數據錯誤通訊延時 問題說明 最近想進行串口通訊的一個測試&#xff0c…

transformer和 RNN以及他的幾個變體區別 改進

Transformer、RNN 及其變體&#xff08;LSTM/GRU&#xff09;是深度學習中處理序列數據的核心模型&#xff0c;但它們的架構設計和應用場景有顯著差異。以下從技術原理、優缺點和適用場景三個維度進行對比分析&#xff1a; 核心架構對比 模型核心機制并行計算能力長序列依賴處…

CSS6404L 在物聯網設備中的應用優勢:低功耗高可靠的存儲革新與競品對比

物聯網設備對存儲芯片的需求聚焦于低功耗、小尺寸、高可靠性與傳輸效率&#xff0c;Cascadeteq 的 CSS6404L 64Mb Quad-SPI Pseudo-SRAM 憑借差異化技術特性&#xff0c;在同類產品中展現顯著優勢。以下從核心特性及競品對比兩方面解析其應用價值。 一、CSS6404L 核心產品特性…

go語言map擴容

map是什么&#xff1f; ?在Go語言中&#xff0c;map是一種內置的無序key/value鍵值對的集合&#xff0c;可以根據key在O(1)的時間復雜度內取到value&#xff0c;有點類似于數組或者切片結構&#xff0c;可以把數組看作是一種特殊的map&#xff0c;數組的key為數組的下標&…