效果图如下
设计思路
- 拆分:文字标题导航,和文章详情
- 数据库设计:导航这个是维护在数据库之中,文字可以用md 文件存储到文件系统中,数据库维护标题,id,及文档地址,评价等等字段
- 回显:查询文档id 后,返回html页面内容,前端去解析
技术选型
使用pegdown 解析md
<dependency><groupId>org.pegdown</groupId><artifactId>pegdown</artifactId><version>1.6.0</version></dependency>
package com.zifeiy.page;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStreamReader;import org.pegdown.PegDownProcessor;public class PageGenerator {public void generateHtml(File mdFile) throws IOException {BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream(mdFile), "UTF-8"));String line = null;String mdContent = "";while ((line = br.readLine()) != null) {mdContent += line + "\r\n";}PegDownProcessor pdp = new PegDownProcessor(Integer.MAX_VALUE);String htmlContent = pdp.markdownToHtml(mdContent);System.out.println(htmlContent);}public static void main(String[] args) throws IOException {PageGenerator pageGenerator = new PageGenerator();pageGenerator.generateHtml(new File("D:\\projects\\zifeiy.github.io\\笔记\\20181125我的第一篇博客.md"));}}
