SpringBoot整合Docsify生成网站文档

 

关于Docsify

官网地址:https://docsify.js.org/

在Docsify官网对Docsify是这样的描述的:

docsify 是一个动态生成文档的工具。不同于 GitBook、Hexo 的地方是它不会生成将 .md 转成 . 文件,所有转换工作都是在运行时进行

使用

官网推荐使用npm的方式去安装使用,但是如果不是级别的需求(文档需要统一管理),个人觉得没有必要去搭建一个项目去做这件事,就好像我写了一个

接口,我更加希望在该项目中直接写好文档,然后可以直接看。所以这里我不介绍官网使用,而是介绍在SpringBoot项目如何使用Docsify生成文档。

下面附上效果图:

 

过程

  • 第一步:新建SpringBoot项目,记得勾选thymeleaf,如果有现成的。Spring Boot项目,引入下面依赖
 
 org.springframework.boot
 spring-boot-starter-thymeleaf
 
  • 第二步:在resource下新建html。目录结构如下,这里大家可以将view下的目录移到static中,根据个人的爱好
resouce
│ 
│ 
└───static
│
│
└───view
│ │ 
│ │ 
│ │
│ └───doc
│ │ _sidebar.md(侧边栏目录)
│ │ README.md (文档内容)
│ │ ...
│ 
└───templates
 │ doc.html
 │ ...
  • 编写templates目录下的doc.html,这里和官方文档介绍相似

 

  • 配置Controller,以便通过URL访问到doc.html
@Controller
public class View {
 @RequestMing("/view/doc")
 public String viewDoc(HashMap map) {
 return "doc";
 }
}
  • 如果设置了拦截器,注意放开这些静态资源,否则会出现404,如果没有设置拦截器,应该会正常访问
@Configuration
public class MyInterceptorConfig extends WebMvcConfigurationSupport {
 @Autowired
 private MyInterceptor loginInterceptor;

 @Override
 protected void addInterceptors(InterceptorRegistry registry) {
 registry.addInterceptor(loginInterceptor).addPathPatterns("/**");
 super.addInterceptors(registry);
 }

 @Override
 protected void addResourceHandlers(ResourceHandlerRegistry registry) {
 registry.addResourceHandler("/view/**")
 .addResourceLocations("classpath:/view/");
 }
}
  • MD文件

_sidebar.md
 

胜象大百科