SpringBoot项目实战(一)--Markdown展示工具

SpringBoot项目实战(一)--Markdown展示工具

标签(空格分隔): spring-boot


1.前言

学习springboot时写的一个工具,因为我做接口的经常写文档,改文档,前端每次从svn更新下来很不方便,所以写了一个本地md文档读取展示工具, 前端访问我的ip就能看到相应的文档了


展示地址: 点击进入

Github: 点击进入


2.简介

2.1前端

前端使用的是layui,相当不错,适合像我这样的对js和css不太熟,但又想做出漂亮页面的后端程序员,很容易上手,基本就是边看文档边开发,还能保证进度.

官网地址:http://www.layui.com/

2.2后端

项目使用了Spring boot和Thymeleaf.
对于Thymeleaf用到也并不是很多,主要用到了返回Html片段这个特性,配合缓存的话很实用,但是现在前后端分离为主流开发方式下,该框架感觉用处也不是很大了.

对于Spring boot,熟悉了Bean的注入方式,Filter和Servlet的配置方式,从Properties中获取配置文件赋值给对应实例的方式,文件上传与下载以及乱码处理等.

2.2.1文件下载后格式混乱

markdown文件下载后,整个格式都乱在了一起,中间的空白以及换行都没了,这是由于字节转换器导致的,因此需要配置一下字节转换器,如下:

@Configuration
public class WEBMessageConvert {
    /**
     * 使用bean注入,才能使其有效果,验证的话就在Entity字段中使用fastjson的
     * 注解@JSONField(serialize = false),转换出来的信息不含该字段,则成功
     */
    @Bean
    public HttpMessageConverters customConverters() {
        .....
        
        //文件下载使用ByteArrayHttpMessageConverter处理
        ByteArrayHttpMessageConverter byteArrayHttpMessageConverter = new ByteArrayHttpMessageConverter();

        //加入转换器
        List<HttpMessageConverter<?>> converters = new ArrayList<>();
        converters.add(byteArrayHttpMessageConverter);

        return new HttpMessageConverters(converters);
    }
}

关于SpringMVC消息转换器,下篇文档再仔细分析,先占坑

2.2.2关于properties文件注入数组

把properties文件自动注入到对应实体类中,如果需要注入集合的话,就需要如下写法:

#markdown文件位置
md.mdpath[0] = /root/markdown/blog/
md.mdpath[1] = /root/markdown/github/

对应实体类为:

@ConfigurationProperties(prefix = "md",locations = "classpath:setting.properties")
public final class Setting {

    /**
     * markdown目录
     */
    private List<String> mdpath;
    
    //省略get和set
}

2.3预览

总效果图:


1.jpg

文本比较工具:


2.jpg

文档上传


3.jpg
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容