springboot基于docsify?實(shí)現(xiàn)隨身文檔
需求分析
- 文檔可以和項(xiàng)目一起進(jìn)行版本管理
- 文檔可以在線訪問(wèn)
- 文檔可以與springboot項(xiàng)目集成,不需要分開(kāi)部署
- MarkDown支持
- 文檔跟隨,打包
jar
也可以訪問(wèn)
技術(shù)選型
對(duì)于網(wǎng)上已有的方案,大致分為如下幾種
- 將文檔部署在
resource
靜態(tài)資源目錄下,用模板渲染訪問(wèn)。[1][1] - 分離部署,打包
jar
后還需要單獨(dú)上傳靜態(tài)資源文檔內(nèi)容并部署。
最終選定的技術(shù)方案如下
工具 | 用途 | 官網(wǎng) |
---|---|---|
Typora | 文檔編寫(xiě) | https://typoraio.cn/ |
Docsify | 文檔部署 | https://docsify.js.org/#/ |
Hutool | 服務(wù)集成 | https://www.hutool.cn/docs/#/ |
工具介紹
Typora
Typora 是一款功能非常強(qiáng)大的 MarkDown編寫(xiě)工具,采用所見(jiàn)即所得的編輯方式,實(shí)現(xiàn)了即時(shí)預(yù)覽的功能,Latex
公式支持,具體請(qǐng)查看官網(wǎng),目前只有平替,沒(méi)有超越的MarkDown編寫(xiě)工具,對(duì)于本方案來(lái)講,支持剪切圖片直接保存到相對(duì)路徑中,方便訪問(wèn)。同時(shí)也支持配置圖床,需要使用PicGo
搭建服務(wù)。
Docsify
docsify 可以自動(dòng)地將 Markdown 中的標(biāo)題生成目錄,快速搭建一個(gè)小型的文檔網(wǎng)站,整個(gè)頁(yè)面的配色和布局也十分舒適,讓閱讀體驗(yàn)在不知不覺(jué)中提升了好幾個(gè)檔次。
和 Gitbook 不同,docsify 不會(huì)生成靜態(tài)的 HTML 文件,它會(huì)智能地加載和解析 Markdown 文件,這就避免了 HTML 文件對(duì)整個(gè)文檔庫(kù)的“污染”。
還支持豐富的自定義樣式。
Hutool
hutool 是一個(gè)非常好用的開(kāi)發(fā)梭子,這種有大量用戶使用的工具類(lèi),絕對(duì)比自己維護(hù)的輪子要穩(wěn)定的多,所以開(kāi)發(fā)選hutool
是非常OK的一個(gè)選擇。
我們使用的是hutool
工具的一個(gè)子包 - SimpleServer
Oracle JDK提供了一個(gè)簡(jiǎn)單的Http服務(wù)端類(lèi),叫做HttpServer
,當(dāng)然它是sun的私有包,位于com.sun.net.httpserver下,必須引入rt.jar才能使用,Hutool基于此封裝了SimpleServer
,用于在不引入Tomcat、Jetty等容器的情況下,實(shí)現(xiàn)簡(jiǎn)單的Http請(qǐng)求處理。
功能實(shí)現(xiàn)
1. 初始化文檔
在 resources
目錄下,或者項(xiàng)目根目錄下執(zhí)行如下命令,在項(xiàng)目根目錄執(zhí)行,需要對(duì) maven 打包進(jìn)行額外的配置,推薦在 resources
目錄下執(zhí)行。
docsify init .docs
docsify init .docs
2. 配置簡(jiǎn)易服務(wù)器
新建DocConfig.java
import cn.hutool.http.HttpUtil; import org.springframework.context.annotation.Bean; import org.springframework.stereotype.Component; import java.io.File; @Component public class DocConfig { @Bean public void InitDoc(){ String rootPath = System.getProperty("user.dir"); HttpUtil.createServer(8888) // 設(shè)置默認(rèn)根目錄 -- resources目錄下新建根據(jù)對(duì)應(yīng)路徑修改,目錄分隔符用 File.separator 保證Win/Linux 兼容 .setRoot(rootPath+ File.separator+".docs") .start(); } }
3. 訪問(wèn)
當(dāng)啟動(dòng) springboot 項(xiàng)目時(shí),訪問(wèn) localhost:8888
即可訪問(wèn)對(duì)應(yīng)文檔
到此這篇關(guān)于springboot基于docsify 實(shí)現(xiàn)隨身文檔的文章就介紹到這了,更多相關(guān)docsify 實(shí)現(xiàn)隨身文檔內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java模擬計(jì)算機(jī)的整數(shù)乘積計(jì)算功能示例
這篇文章主要介紹了Java模擬計(jì)算機(jī)的整數(shù)乘積計(jì)算功能,簡(jiǎn)單分析了計(jì)算機(jī)數(shù)值進(jìn)制轉(zhuǎn)換與通過(guò)位移進(jìn)行乘積計(jì)算的原理,并結(jié)合具體實(shí)例給出了java模擬計(jì)算機(jī)成績(jī)運(yùn)算的相關(guān)操作技巧,需要的朋友可以參考下2017-09-09Spring RedirectAttributes參數(shù)跳轉(zhuǎn)代碼實(shí)例
這篇文章主要介紹了Spring RedirectAttributes參數(shù)跳轉(zhuǎn)代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-04-04SpringMVC文件上傳原理及實(shí)現(xiàn)過(guò)程解析
這篇文章主要介紹了SpringMVC文件上傳原理及實(shí)現(xiàn)過(guò)程解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-07-07使用@Autowired 注入RedisTemplate報(bào)錯(cuò)的問(wèn)題及解決
這篇文章主要介紹了使用@Autowired 注入RedisTemplate報(bào)錯(cuò)的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-08-08Windows下安裝ElasticSearch的方法(圖文)
這篇文章主要介紹了Windows下安裝ElasticSearch的方法(圖文),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-01-01Java中策略設(shè)計(jì)模式的實(shí)現(xiàn)及應(yīng)用場(chǎng)景
策略設(shè)計(jì)模式是Java中一種常用的設(shè)計(jì)模式,它通過(guò)定義一系列算法并將其封裝成獨(dú)立的策略類(lèi),從而使得算法可以在不影響客戶端的情況下隨時(shí)切換。策略設(shè)計(jì)模式主要應(yīng)用于系統(tǒng)中存在多種相似的算法、需要靈活調(diào)整算法邏輯或者需要擴(kuò)展新的算法等場(chǎng)景2023-04-04從千千靜聽(tīng)歌詞服務(wù)器獲取lrc歌詞示例分享
這篇文章主要介紹了使用PHP從千千靜聽(tīng)歌詞服務(wù)器獲取lrc歌詞的方法,大家參考使用吧2014-01-01