diff --git a/java/spring/1.spring基础.md b/java/spring/1.spring基础.md
index 615f699..9e4f3b5 100644
--- a/java/spring/1.spring基础.md
+++ b/java/spring/1.spring基础.md
@@ -1,10 +1,11 @@
---
-id="2018-10-20-10-38-05"
-title="spring基础"
-headWord="spring是为了解决企业级应用开发的复杂性而创建的,spring最根本的使命是:简化Java开发。为降低开发复杂性有以下四种关键策略。 "
-tags=["java", "spring"]
-category="java"
-serie="spring学习"
+id: "2018-10-20-10-38-05"
+title: "spring基础"
+headWord: "spring是为了解决企业级应用开发的复杂性而创建的,spring最根本的使命是:简化Java开发。为降低开发复杂性有以下四种关键策略。 "
+tags: ["java", "spring"]
+categories:
+- "java"
+- "spring学习"
---
spring 是为了解决企业级应用开发的复杂性而创建的,spring 最根本的使命是:简化 Java 开发。为降低开发复杂性有以下四种关键策略。
diff --git a/java/spring/2.最小化XML配置.md b/java/spring/2.最小化XML配置.md
index f0f5d3b..c2162fc 100644
--- a/java/spring/2.最小化XML配置.md
+++ b/java/spring/2.最小化XML配置.md
@@ -1,10 +1,11 @@
---
-id="2018-10-21-10-38-05"
-title="spring之最小化XML配置"
-headWord="spring是为了解决企业级应用开发的复杂性而创建的,但是最初的Spring在随着应用程序的规模越来越大的情况下,xml配置文件也随之膨胀,变得不便于阅读与管理,随后就有了一系列的手段来减少xml配置,直到一行都没有"
-tags=["java", "spring"]
-category="java"
-serie="spring学习"
+id: "2018-10-21-10-38-05"
+title: "spring之最小化XML配置"
+headWord: "spring是为了解决企业级应用开发的复杂性而创建的,但是最初的Spring在随着应用程序的规模越来越大的情况下,xml配置文件也随之膨胀,变得不便于阅读与管理,随后就有了一系列的手段来减少xml配置,直到一行都没有"
+tags: ["java", "spring"]
+categories:
+- "java"
+- "spring学习"
---
## 一、自动装配
diff --git a/java/spring/3.面向切面的Spring.md b/java/spring/3.面向切面的Spring.md
index 0695cbb..d13f155 100644
--- a/java/spring/3.面向切面的Spring.md
+++ b/java/spring/3.面向切面的Spring.md
@@ -1,10 +1,11 @@
---
-id="2018-10-22-10-38-05"
-title="spring之面向切面"
-headWord="Spring的基础是IOC和AOP,前面两节对IOC和DI做了简单总结,这里再对AOP进行一个学习总结,Spring基础就算有一个初步了解了。"
-tags=["java", "spring"]
-category="java"
-serie="spring学习"
+id: "2018-10-22-10-38-05"
+title: "spring之面向切面"
+headWord: "Spring的基础是IOC和AOP,前面两节对IOC和DI做了简单总结,这里再对AOP进行一个学习总结,Spring基础就算有一个初步了解了。"
+tags: ["java", "spring"]
+categories:
+- "java"
+- spring学习"
---
Spring 的基础是 IOC 和 AOP,前面两节对 IOC 和 DI 做了简单总结,这里再对 AOP 进行一个学习总结,Spring 基础就算有一个初步了解了。
diff --git a/java/springboot系列/springboot搭建/springboot搭建.md b/java/springboot系列/springboot搭建/springboot搭建.md
index 7bd2a9f..b448231 100644
--- a/java/springboot系列/springboot搭建/springboot搭建.md
+++ b/java/springboot系列/springboot搭建/springboot搭建.md
@@ -1,10 +1,11 @@
---
-id="2018-08-13-10-38"
-title="springboot搭建"
-headWord="前面的博客有说到spring boot搭建见另一篇博文,其实那篇博文还没写,现在来填个坑。我们使用spring initializr来构建,idea和eclipse都支持这种方式,构建过程类似,这里以idea为例,详细记录构建过程。"
-tags=["java", "spring","springboot","idea"]
-category="java"
-serie="spring boot学习"
+id: "2018-08-13-10-38"
+title: "springboot搭建"
+headWord: "前面的博客有说到spring boot搭建见另一篇博文,其实那篇博文还没写,现在来填个坑。我们使用spring initializr来构建,idea和eclipse都支持这种方式,构建过程类似,这里以idea为例,详细记录构建过程。"
+tags: ["java", "spring","springboot","idea"]
+categories:
+- "java"
+- "spring boot学习"
---
前面的博客有说到 spring boot 搭建见另一篇博文,其实那篇博文还没写,现在来填个坑。我们使用 spring initializr 来构建,idea 和 eclipse 都支持这种方式,构建过程类似,这里以 idea 为例,详细记录构建过程。
diff --git a/java/springboot系列/springsecurity/springboot+security整合1.md b/java/springboot系列/springsecurity/springboot+security整合1.md
index 4d22181..1908610 100644
--- a/java/springboot系列/springsecurity/springboot+security整合1.md
+++ b/java/springboot系列/springsecurity/springboot+security整合1.md
@@ -1,10 +1,11 @@
---
-id="2018-08-20-10-38"
-title="springboot+security整合(1)"
-headWord="javaee中的非常重要的一个安全认证框架,但是略微重量级,但是既然领导交代要学,那就学吧。。。"
-tags=["java", "spring","springboot","spring-security","security"]
-category="java"
-serie="spring boot学习"
+id: "2018-08-20-10-38"
+title: "springboot+security整合(1)"
+headWord: "javaee中的非常重要的一个安全认证框架,但是略微重量级,但是既然领导交代要学,那就学吧。。。"
+tags: ["java", "spring","springboot","spring-security","security"]
+categories:
+- "java"
+- "spring boot学习"
---
**说明 springboot 版本 2.0.3
源码地址:[点击跳转](https://github.com/FleyX/demo-project/tree/master/springboot_spirngsecurity_demo)**
diff --git a/java/springboot系列/springsecurity/springboot+security整合2.md b/java/springboot系列/springsecurity/springboot+security整合2.md
index 6f4d605..c8c09cf 100644
--- a/java/springboot系列/springsecurity/springboot+security整合2.md
+++ b/java/springboot系列/springsecurity/springboot+security整合2.md
@@ -1,10 +1,11 @@
---
-id="2018-08-21-10-38"
-title="springboot+security整合(2)"
-headWord="文接上篇,上一篇中登录验证都由security帮助我们完成了,如果我们想要增加一个验证码登录或者其它的自定义校验就没办法了,因此这一篇讲解如何实现这个功能。"
-tags=["java", "spring","springboot","spring-security","security"]
-category="java"
-serie="spring boot学习"
+id: "2018-08-21-10-38"
+title: "springboot+security整合(2)"
+headWord: "文接上篇,上一篇中登录验证都由security帮助我们完成了,如果我们想要增加一个验证码登录或者其它的自定义校验就没办法了,因此这一篇讲解如何实现这个功能。"
+tags: ["java", "spring","springboot","spring-security","security"]
+categories:
+- "java"
+- spring boot学习"
---
紧接着上一篇,上一篇中登录验证都由 security 帮助我们完成了,如果我们想要增加一个验证码登录或者其它的自定义校验就没办法了,因此这一篇讲解如何实现这个功能。
diff --git a/java/springboot系列/springsecurity/springboot+security整合3.md b/java/springboot系列/springsecurity/springboot+security整合3.md
index e2230bf..952d406 100644
--- a/java/springboot系列/springsecurity/springboot+security整合3.md
+++ b/java/springboot系列/springsecurity/springboot+security整合3.md
@@ -1,10 +1,11 @@
---
-id="2018-08-22-10-38"
-title="springboot+security整合(3)"
-headWord="文接上篇,上篇说了那个啥自定义校验的功能,这篇来学学如何自定义鉴权。感觉都定义到这个地步,都不太需要security框架了,再自己整整缓存方面的功能就是一个功能完成的鉴权模块了。"
-tags=["java", "spring","springboot","spring-security","security"]
-category="java"
-serie="spring boot学习"
+id: "2018-08-22-10-38"
+title: "springboot+security整合(3)"
+headWord: "文接上篇,上篇说了那个啥自定义校验的功能,这篇来学学如何自定义鉴权。感觉都定义到这个地步,都不太需要security框架了,再自己整整缓存方面的功能就是一个功能完成的鉴权模块了。"
+tags: ["java", "spring","springboot","spring-security","security"]
+categories:
+- "java"
+- "spring boot学习"
---
这篇讲解如何自定义鉴权过程,实现根据数据库查询出的 url 和 method 是否匹配当前请求的 url 和 method 来决定有没有权限。security 鉴权过程如下:
diff --git a/java/springboot系列/websocket/springboot整合websocket.md b/java/springboot系列/websocket/springboot整合websocket.md
index 0185717..1746d71 100644
--- a/java/springboot系列/websocket/springboot整合websocket.md
+++ b/java/springboot系列/websocket/springboot整合websocket.md
@@ -1,10 +1,11 @@
---
-id="2018-08-25-10-38"
-title="springboot整合WebSocket"
-headWord="webSocket作为http单向连接的补充,实现了服务端,浏览器端的双向通信,还是有必要了解了解"
-tags=["java", "spring","springboot","WebSocket"]
-category="java"
-serie="spring boot学习"
+id: "2018-08-25-10-38"
+title: "springboot整合WebSocket"
+headWord: "webSocket作为http单向连接的补充,实现了服务端,浏览器端的双向通信,还是有必要了解了解"
+tags: ["java", "spring","springboot","WebSocket"]
+categories:
+- "java"
+- "spring boot学习"
---
### 一、背景
diff --git a/java/springboot系列/数据库/springboot整合mybatis(xml和注解).md b/java/springboot系列/数据库/springboot整合mybatis(xml和注解).md
index 28fdb84..0fe5953 100644
--- a/java/springboot系列/数据库/springboot整合mybatis(xml和注解).md
+++ b/java/springboot系列/数据库/springboot整合mybatis(xml和注解).md
@@ -1,10 +1,11 @@
---
-id="2018-09-01-10-38"
-title="springboot整合Mybatis(xml和注解)"
-headWord="写的一手好sql就能玩转mybatis,入门难度相较于hibernate小得多。"
-tags=["java", "spring","springboot","mysql","mybatis","xml","注解"]
-category="java"
-serie="spring boot学习"
+id: "2018-09-01-10-38"
+title: "springboot整合Mybatis(xml和注解)"
+headWord: "写的一手好sql就能玩转mybatis,入门难度相较于hibernate小得多。"
+tag: ["java", "spring","springboot","mysql","mybatis","xml","注解"]
+categories:
+- "java"
+- "spring boot学习"
---
## 写在前面
diff --git a/java/springboot系列/消息队列/springboot整合activeMQ(1).md b/java/springboot系列/消息队列/springboot整合activeMQ(1).md
index 6560709..08d15a5 100644
--- a/java/springboot系列/消息队列/springboot整合activeMQ(1).md
+++ b/java/springboot系列/消息队列/springboot整合activeMQ(1).md
@@ -1,10 +1,11 @@
---
-id="2018-09-05-10-38"
-title="springboot整合ActiveMQ(1)"
-headWord="稍大的项目中都会用到mq消息队列,so这个自然也是要学的,为啥是activeMQ呢?刚好目前的项目中用的就是这个拉。"
-tags=["java", "spring","springboot","消息队列","activeMQ"]
-category="java"
-serie="spring boot学习"
+id: "2018-09-05-10-38"
+title: "springboot整合ActiveMQ(1)"
+headWord: "稍大的项目中都会用到mq消息队列,so这个自然也是要学的,为啥是activeMQ呢?刚好目前的项目中用的就是这个拉。"
+tags: ["java", "spring","springboot","消息队列","activeMQ"]
+categories:
+- "java"
+- "spring boot学习"
---
**说明:acitveMQ 版本为:5.9.1,springboot 版本为 2.0.3,项目地址:[点击跳转](https://github.com/FleyX/demo-project/tree/master/jms_demo)**
diff --git a/java/springboot系列/消息队列/springboot整合activeMQ(2).md b/java/springboot系列/消息队列/springboot整合activeMQ(2).md
index 31df175..8d9b7dc 100644
--- a/java/springboot系列/消息队列/springboot整合activeMQ(2).md
+++ b/java/springboot系列/消息队列/springboot整合activeMQ(2).md
@@ -1,10 +1,11 @@
---
-id="2018-09-06-10-38"
-title="springboot整合ActiveMQ(2)"
-headWord="接着上文来说,这里来说如何实现activemq的主从备份"
-tags=["java", "spring","springboot","消息队列","activeMQ"]
-category="java"
-serie="spring boot学习"
+id: "2018-09-06-10-38"
+title: "springboot整合ActiveMQ(2)"
+headWord: "接着上文来说,这里来说如何实现activemq的主从备份"
+tags: ["java", "spring","springboot","消息队列","activeMQ"]
+categories:
+- "java"
+- "spring boot学习"
---
单个 MQ 节点总是不可靠的,一旦该节点出现故障,MQ 服务就不可用了,势必会产生较大的损失。这里记录 activeMQ 如何开启主从备份,一旦 master(主节点故障),slave(从节点)立即提供服务,实现原理是运行多个 MQ 使用同一个持久化数据源,这里以 jdbc 数据源为例。同一时间只有一个节点(节点 A)能够抢到数据库的表锁,其他节点进入阻塞状态,一旦 A 发生错误崩溃,其他节点就会重新获取表锁,获取到锁的节点成为 master,其他节点为 slave,如果节点 A 重新启动,也将成为 slave。
diff --git a/java/springboot系列/读写分离配置/springboot配置读写分离.md b/java/springboot系列/读写分离配置/springboot配置读写分离.md
index d6e0139..f5a021e 100644
--- a/java/springboot系列/读写分离配置/springboot配置读写分离.md
+++ b/java/springboot系列/读写分离配置/springboot配置读写分离.md
@@ -1,10 +1,11 @@
---
-id="2018-09-10-10-38"
-title="springboot配置读写分离(Mybatis)"
-headWord="近日工作任务较轻,有空学习学习技术,遂来研究如果实现读写分离。这里用博客记录下过程,一方面可备日后查看,同时也能分享给大家(网上的资料真的大都是抄来抄去,,还不带格式的,看的真心难受)。"
-tags=["java", "spring","springboot","mysql","主从备份","读写分离"]
-category="java"
-serie="spring boot学习"
+id: "2018-09-10-10-38"
+title: "springboot配置读写分离(Mybatis)"
+headWord: "近日工作任务较轻,有空学习学习技术,遂来研究如果实现读写分离。这里用博客记录下过程,一方面可备日后查看,同时也能分享给大家(网上的资料真的大都是抄来抄去,,还不带格式的,看的真心难受)。"
+tags: ["java", "spring","springboot","mysql","主从备份","读写分离"]
+categories:
+- "java"
+- "spring boot学习"
---
近日工作任务较轻,有空学习学习技术,遂来研究如果实现读写分离。这里用博客记录下过程,一方面可备日后查看,同时也能分享给大家(网上的资料真的大都是抄来抄去,,还不带格式的,看的真心难受)。
diff --git a/java/springcloud实战/1.springCloudConfig使用.md b/java/springcloud实战/1.springCloudConfig使用.md
index b9ed864..1fb36c4 100644
--- a/java/springcloud实战/1.springCloudConfig使用.md
+++ b/java/springcloud实战/1.springCloudConfig使用.md
@@ -1,10 +1,11 @@
---
-id="2018-11-19-15-57-00"
-title="springCloud学习1(集中式配置管理)"
-headWord="本篇主要用于记录如何在spring cloud中将服务配置与服务代码分离开来,通过向集中的配置服务请求获取某个微服务需要的配置。"
-tags=["spring-boot", "spring-cloud-config","git"]
-category="java"
-serie="springCloud实战"
+id: "2018-11-19-15-57-00"
+title: "springCloud学习1(集中式配置管理)"
+headWord: "本篇主要用于记录如何在spring cloud中将服务配置与服务代码分离开来,通过向集中的配置服务请求获取某个微服务需要的配置。"
+tags: ["spring-boot", "spring-cloud-config","git"]
+categories:
+- "java"
+- "springCloud实战"
---
本篇项目代码存放于:[点击跳转](https://github.com/FleyX/demo-project/tree/master/springcloud/spring-cloud-config%E9%85%8D%E7%BD%AE%E4%B8%AD%E5%BF%83)
diff --git a/java/springcloud实战/2.springCloud服务发现.md b/java/springcloud实战/2.springCloud服务发现.md
index 473cd63..0ebe974 100644
--- a/java/springcloud实战/2.springCloud服务发现.md
+++ b/java/springcloud实战/2.springCloud服务发现.md
@@ -1,10 +1,11 @@
---
-id="2018-11-22-15-57"
-title="springCloud学习2(服务发现)"
-headWord="在任何分布式架构中,都需要找到机器所在的物理地址,这个概念自分布式计算开始就已经存在,并且被正式称为服务发现,本篇是对服务发现的一个学习总结"
-tags=["spring-boot", "spring-cloud","eureka"]
-category="java"
-serie="springCloud实战"
+id: "2018-11-22-15-57"
+title: "springCloud学习2(服务发现)"
+headWord: "在任何分布式架构中,都需要找到机器所在的物理地址,这个概念自分布式计算开始就已经存在,并且被正式称为服务发现,本篇是对服务发现的一个学习总结"
+tags: ["spring-boot", "spring-cloud","eureka"]
+categories:
+- "java"
+- "springCloud实战"
---
本篇代码存放于:[github](https://github.com/FleyX/demo-project/tree/master/springcloud/spring-cloud%E6%9C%8D%E5%8A%A1%E5%8F%91%E7%8E%B0)
diff --git a/java/springcloud实战/3.springCloud与Netflix Hystrix的弹性客户端模式.md b/java/springcloud实战/3.springCloud与Netflix Hystrix的弹性客户端模式.md
index 5ef53e6..78da14f 100644
--- a/java/springcloud实战/3.springCloud与Netflix Hystrix的弹性客户端模式.md
+++ b/java/springcloud实战/3.springCloud与Netflix Hystrix的弹性客户端模式.md
@@ -1,10 +1,11 @@
---
-id="2018-11-28-15-57-00"
-title="springCloud学习3(Netflix Hystrix弹性客户端)"
-headWord="系统故障是不可避免的,分布式系统故障概率相比于单机系统更高,如何来应对故障是无法回避的一个难题,本篇是对客户端弹性模式的一个学习总结。"
-tags=["spring-boot", "spring-cloud","netflix-hystrix","熔断"]
-category="java"
-serie="springCloud实战"
+id: "2018-11-28-15-57-00"
+title: "springCloud学习3(Netflix Hystrix弹性客户端)"
+headWord: "系统故障是不可避免的,分布式系统故障概率相比于单机系统更高,如何来应对故障是无法回避的一个难题,本篇是对客户端弹性模式的一个学习总结。"
+tags: ["spring-boot", "spring-cloud","netflix-hystrix","熔断"]
+categories:
+- "java"
+- "springCloud实战"
---
**本篇原创发布于:**[FleyX 的个人博客](tapme.top/blog/detail/2018-11-28-15-57-00)
diff --git a/java/springcloud实战/4.springCloud之Zuul服务路由.md b/java/springcloud实战/4.springCloud之Zuul服务路由.md
index 4b10a42..8a192e9 100644
--- a/java/springcloud实战/4.springCloud之Zuul服务路由.md
+++ b/java/springcloud实战/4.springCloud之Zuul服务路由.md
@@ -1,10 +1,11 @@
---
-id="2019-01-03-19-19"
-title="springCloud学习4(Zuul服务路由)"
-headWord="像微服务这样的分布式架构中,需要确保跨多个服务调用的关键行为(如安全、日志记录、用户跟踪等)能够正常运行,这就需要一个服务网关来统一处理。"
-tags=["spring-boot", "spring-cloud","netflix-zuul","service-gateway"]
-category="java"
-serie="springCloud实战"
+id: "2019-01-03-19-19"
+title: "springCloud学习4(Zuul服务路由)"
+headWord: "像微服务这样的分布式架构中,需要确保跨多个服务调用的关键行为(如安全、日志记录、用户跟踪等)能够正常运行,这就需要一个服务网关来统一处理。"
+tags: ["spring-boot", "spring-cloud","netflix-zuul","service-gateway"]
+categories:
+- "java"
+- "springCloud实战"
---
镇博图
diff --git a/java/springcloud实战/5.springCloud之Spring Cloud Stream事件驱动架构.md b/java/springcloud实战/5.springCloud之Spring Cloud Stream事件驱动架构.md
index 9b5a775..0af6cfe 100644
--- a/java/springcloud实战/5.springCloud之Spring Cloud Stream事件驱动架构.md
+++ b/java/springcloud实战/5.springCloud之Spring Cloud Stream事件驱动架构.md
@@ -1,10 +1,11 @@
---
-id="2019-01-03-19-19"
-title="springCloud学习4(Spring-Cloud-Stream事件驱动)"
-headWord="像微服务这样的分布式架构中,需要确保跨多个服务调用的关键行为(如安全、日志记录、用户跟踪等)能够正常运行,这就需要一个服务网关来统一处理。"
-tags=["spring-boot", "spring-cloud","spring-cloud-stream","kafka","事件驱动"]
-category="java"
-serie="springCloud实战"
+id: "2019-01-03-19-19"
+title: "springCloud学习4(Spring-Cloud-Stream事件驱动)"
+headWord: "像微服务这样的分布式架构中,需要确保跨多个服务调用的关键行为(如安全、日志记录、用户跟踪等)能够正常运行,这就需要一个服务网关来统一处理。"
+tags: ["spring-boot", "spring-cloud","spring-cloud-stream","kafka","事件驱动"]
+categories:
+- "java"
+- "springCloud实战"
---
想想平常生活中做饭的场景,在用电饭锅做饭的同时,我们可以洗菜、切菜,等待电饭锅发出饭做好的提示我们回去拔下电饭锅电源(或者什么也不知让它处于保温状态),反正这个时候我们知道饭做好了,接下来可以炒菜了。从这里可以看出我们在日常生活中与世界的互动并不是同步的、线性的,不是简单的请求--响应模型。它是事件驱动的,我们不断的发送消息、接受消息、处理消息。
diff --git a/java/其他/Java线程池问题.md b/java/其他/Java线程池问题.md
index 97958bc..8e17c6a 100644
--- a/java/其他/Java线程池问题.md
+++ b/java/其他/Java线程池问题.md
@@ -1,10 +1,11 @@
---
-id="2019-01-09-20-52"
-title="java线程池使用后到底要不要关闭"
-headWord="最近在开发中用到了java的线程池,然后就很疑惑这个线程池到底要不要手动关闭,感觉是要关闭的,但是没人强调线程池用完要关闭。so今天来试验下到底线程池用完要不要关闭"
-tags=["java","线程池","ThreadPoolExecutor"]
-category="java"
-serie="java基础"
+id: "2019-01-09-20-52"
+title: "java线程池使用后到底要不要关闭"
+headWord: "最近在开发中用到了java的线程池,然后就很疑惑这个线程池到底要不要手动关闭,感觉是要关闭的,但是没人强调线程池用完要关闭。so今天来试验下到底线程池用完要不要关闭"
+tags: ["java","线程池","ThreadPoolExecutor"]
+categories:
+- "java"
+- "java基础"
---
**_本篇原创发布于:_** [java 线程池使用后到底要不要关闭](http://tapme.top/blog/detail/2019-01-09-20-52)
diff --git a/java/其他/java导出EXCEL文件.md b/java/其他/java导出EXCEL文件.md
index b331c85..71381b0 100644
--- a/java/其他/java导出EXCEL文件.md
+++ b/java/其他/java导出EXCEL文件.md
@@ -1,10 +1,11 @@
---
-id="2018-09-22-15-57"
-title="java导出EXCEL文件"
-headWord="最近在java上做了一个EXCEL的导出功能,写了一个通用类,在这里分享分享,该类支持多sheet,且无需手动进行复杂的类型转换."
-tags=["reflex", "java","excel","SXSSFWorksheet"]
-category="java"
-serie="java工具集"
+id: "2018-09-22-15-57"
+title: "java导出EXCEL文件"
+headWord: "最近在java上做了一个EXCEL的导出功能,写了一个通用类,在这里分享分享,该类支持多sheet,且无需手动进行复杂的类型转换."
+tags: ["reflex", "java","excel","SXSSFWorksheet"]
+categories:
+- "java"
+- "java工具集"
---
**本篇原创发布于:**[FleyX 的个人博客](tapme.top/blog/detail/2018-09-22-15-57)
diff --git a/linux/docker/1.linux下docker安装与配置.md b/linux/docker/1.linux下docker安装与配置.md
index 5164a5e..0d8c904 100644
--- a/linux/docker/1.linux下docker安装与配置.md
+++ b/linux/docker/1.linux下docker安装与配置.md
@@ -1,10 +1,11 @@
---
-id="2018-11-20-10-38-05"
-title="1.linux下mongodb的配置与安装"
-headWord="linux下docker的安装与配置"
-tags=["docker", "linux","ubuntu"]
-category="linux"
-serie="docker教程"
+id: "2018-11-20-10-38-05"
+title: "1.linux下mongodb的配置与安装"
+headWord: "linux下docker的安装与配置"
+tags: ["docker", "linux","ubuntu"]
+categories:
+- "linux"
+- "docker教程"
---
# 一、安装
diff --git a/linux/docker/2.docker简单使用教程.md b/linux/docker/2.docker简单使用教程.md
index 010df7c..8a22c78 100644
--- a/linux/docker/2.docker简单使用教程.md
+++ b/linux/docker/2.docker简单使用教程.md
@@ -1,10 +1,11 @@
---
-id="2018-12-26-13-18"
-title="2.docker简单使用教程"
-headWord="本篇用来记录一些在docker中经常用到的命令,慢慢补充中。"
-tags=["docker","mysql"]
-category="linux"
-serie="docker教程"
+id: "2018-12-26-13-18"
+title: "2.docker简单使用教程"
+headWord: "本篇用来记录一些在docker中经常用到的命令,慢慢补充中。"
+tags: ["docker","mysql"]
+categories:
+- "linux"
+- "docker教程"
---
### 1、镜像操作
diff --git a/linux/docker/3.docker部署java应用.md b/linux/docker/3.docker部署java应用.md
index 784d37b..ef65678 100644
--- a/linux/docker/3.docker部署java应用.md
+++ b/linux/docker/3.docker部署java应用.md
@@ -1,10 +1,11 @@
---
-id="2019-02-01-14-05"
-title="3.从零开始在docker中部署java应用"
-headWord=" 在没有 docker 前,项目转测试是比较麻烦的一件事。首先会化较长的时间搭建测试环境,然后在测试过程中又经常出现测试说是 bug,开发说无法复现的情况,导致撕逼。
本篇记录了如何将一个 java 应用部署到 docker 中。"
-tags=["docker","springboot","jar","war","elastricsearch","activemq"]
-category="linux"
-serie="docker教程"
+id: "2019-02-01-14-05"
+title: "3.从零开始在docker中部署java应用"
+headWord: " 在没有 docker 前,项目转测试是比较麻烦的一件事。首先会化较长的时间搭建测试环境,然后在测试过程中又经常出现测试说是 bug,开发说无法复现的情况,导致撕逼。
本篇记录了如何将一个 java 应用部署到 docker 中。"
+tags: ["docker","springboot","jar","war","elastricsearch","activemq"]
+categories:
+- "linux"
+- "docker教程"
---
**本篇原创发布于 Flex 的个人博客**:[点击跳转](http://tapme.top/blog/detail/2019-02-01-14-05)
diff --git a/linux/软件安装/docker下mysql启动报错.md b/linux/软件安装/docker下mysql启动报错.md
index e8bb8ee..b1cf23c 100644
--- a/linux/软件安装/docker下mysql启动报错.md
+++ b/linux/软件安装/docker下mysql启动报错.md
@@ -1,10 +1,11 @@
---
-id="2018-12-26-11-50"
-title="docker下mysql启动报错"
-headWord="报错是这么产生的,使用装有mysql的镜像创业一个容器,然后在容器中启动mysql就会报错,启动失败。"
-tags=["docker","mysql"]
-category="linux"
-serie="踩坑"
+id: "2018-12-26-11-50"
+title: "docker下mysql启动报错"
+headWord: "报错是这么产生的,使用装有mysql的镜像创业一个容器,然后在容器中启动mysql就会报错,启动失败。"
+tags: ["docker","mysql"]
+categories:
+- "linux"
+- "踩坑"
---
# 1、报错过程
diff --git a/linux/软件安装/linux下mongodb的安装与配置(非atp).md b/linux/软件安装/linux下mongodb的安装与配置(非atp).md
index eb08498..770266e 100644
--- a/linux/软件安装/linux下mongodb的安装与配置(非atp).md
+++ b/linux/软件安装/linux下mongodb的安装与配置(非atp).md
@@ -1,10 +1,11 @@
---
-id="2018-11-20-10-38-05"
-title="linux下mongodb的配置与安装"
-headWord="记录linux下如何安装与配置mongodb"
-tags=["mongodb", "linux"]
-category="linux"
-serie="软件相关"
+id: "2018-11-20-10-38-05"
+title: "linux下mongodb的配置与安装"
+headWord: "记录linux下如何安装与配置mongodb"
+tags: ["mongodb", "linux"]
+categories:
+- "linux"
+- "软件相关"
---
首先到官网下载安装包,官网地址如下:[点击跳转](https://www.mongodb.com/download-center/community),选中合适的版本,下面会出现下载链接,然后使用 wget url 下载到当前文件夹下。mongodb 4.04 ubuntu18.04 64 下载命令如下:
diff --git a/look.json b/look.json
index 354377b..9e26dfe 100644
--- a/look.json
+++ b/look.json
@@ -1 +1 @@
-{"2018-11-22-15-57-00":14,"2018-11-20-10-38-05":18,"2018-11-19-15-57-00":3,"2018-10-22-10-38-05":14,"2018-10-21-10-38-05":3,"2018-10-20-10-38-05":20}
\ No newline at end of file
+{}
\ No newline at end of file
diff --git a/node/环境配置/vscode开发调试typescript.md b/node/环境配置/vscode开发调试typescript.md
index 22ce351..b749e50 100644
--- a/node/环境配置/vscode开发调试typescript.md
+++ b/node/环境配置/vscode开发调试typescript.md
@@ -1,10 +1,11 @@
---
-id="2018-12-17-13-58"
-title="vscode开发调试typescript"
-headWord="本篇用于记录如何在vscode下开发typescript以及端点调试ts代码"
-tags=["vscode", "node","typescript","ts"]
-category="node"
-serie="node开发配置"
+id: "2018-12-17-13-58"
+title: "vscode开发调试typescript"
+headWord: "本篇用于记录如何在vscode下开发typescript以及端点调试ts代码"
+tags: ["vscode", "node","typescript","ts"]
+categories:
+- "node"
+- node开发配置"
---
### 1、安装 typescript
diff --git a/node/项目/node,vue开发教学管理系统.md b/node/项目/node,vue开发教学管理系统.md
index 7f5edf6..42deefb 100644
--- a/node/项目/node,vue开发教学管理系统.md
+++ b/node/项目/node,vue开发教学管理系统.md
@@ -1,10 +1,11 @@
---
-id="2018-10-01-13-58"
-title="node,vue开发教学管理系统"
-headWord="毕业才刚刚两个多月而已,现在想想大学生活是已经是那么的遥不可及,感觉已经过了好久好久,社会了两个月才明白学校的好啊。。。"
-tags=["node", "vue","element-ui","axios","koa","redis","mysql","jwt"]
-category="node"
-serie="项目"
+id: "2018-10-01-13-58"
+title: "node,vue开发教学管理系统"
+headWord: "毕业才刚刚两个多月而已,现在想想大学生活是已经是那么的遥不可及,感觉已经过了好久好久,社会了两个月才明白学校的好啊。。。"
+tags: ["node", "vue","element-ui","axios","koa","redis","mysql","jwt"]
+categories:
+- "node"
+- "项目"
---
毕业才刚刚两个多月而已,现在想想大学生活是已经是那么的遥不可及,感觉已经过了好久好久,社会了两个月才明白学校的好啊。。。额,扯远了,自从毕业开始就想找个时间写下毕设的记录总结,结果找了好久好久到今天才开始动笔。
diff --git a/其他各种/git crlf、lf自动转换引起的问题.md b/其他各种/git crlf、lf自动转换引起的问题.md
index 4a75d87..ccf6728 100644
--- a/其他各种/git crlf、lf自动转换引起的问题.md
+++ b/其他各种/git crlf、lf自动转换引起的问题.md
@@ -1,10 +1,11 @@
---
-id="2018-09-20-10-58"
-title="git crlf、lf自动转换问题"
-headWord="踩坑,都是从git拉下来的,就我老是报错,怎么都跑不起来,,花了半天时间排查原因。。。"
-tags=["git","crlf","lf","flyway"]
-category="其他"
-serie="踩坑"
+id: "2018-09-20-10-58"
+title: "git crlf、lf自动转换问题"
+headWord: "踩坑,都是从git拉下来的,就我老是报错,怎么都跑不起来,,花了半天时间排查原因。。。"
+tags: ["git","crlf","lf","flyway"]
+categories:
+- "其他"
+- "踩坑"
---
项目组最近加了一个新功能到代码中,使用 flyway 记录数据库版本变更,该工具会记录每次数据库结构的修改并生成 sql 文件存在指定目录上(当然必须用它来变更数据库,外部的变更它是无法感知的),然后每次启动时 flyway 会检查使用的数据库和当前项目代码中的 sql 变更版本是否一致,一致正常启动,不一致中如果是数据库落后将会更新数据库(这样能够保证代码在任何地方运行数据库都是一致的),否则就报错了。数据库中有一张表记录版本信息,如下图:
diff --git a/其他各种/正则表达式在密码匹配中的使用.md b/其他各种/正则表达式在密码匹配中的使用.md
index 2642edc..2ce0025 100644
--- a/其他各种/正则表达式在密码匹配中的使用.md
+++ b/其他各种/正则表达式在密码匹配中的使用.md
@@ -1,10 +1,11 @@
---
-id="2018-09-30-10-58"
-title="正则匹配之正向/反向预测先行搜索"
-headWord="今天领导让我写几个正则表达式来对密码做强度验证,听到写正则表达式内心是这样的感觉(哈哈,三分钟搞定,今天又可以打鱼了)..但是显然不会这么简单."
-tags=["java","正则匹配","pattern","预测先行搜索"]
-category="java"
-serie="正则匹配"
+id: "2018-09-30-10-58"
+title: "正则匹配之正向/反向预测先行搜索"
+headWord: "今天领导让我写几个正则表达式来对密码做强度验证,听到写正则表达式内心是这样的感觉(哈哈,三分钟搞定,今天又可以打鱼了)..但是显然不会这么简单."
+tags: ["java","正则匹配","pattern","预测先行搜索"]
+categories:
+- "java"
+- "正则匹配"
---
## 一、背景
diff --git a/数据库/分布式/分布式事务.md b/数据库/分布式/分布式事务.md
index b6ecbe9..48bf034 100644
--- a/数据库/分布式/分布式事务.md
+++ b/数据库/分布式/分布式事务.md
@@ -1,10 +1,11 @@
---
-id="2018-10-03-10-58"
-title="分布式事务"
-headWord="分布式听说很火,但是分布式事务有很难解决,so来了解了解"
-tags=["分布式","sql","2PC","TCC","异步补偿"]
-category="数据库"
-serie="分布式事务"
+id: "2018-10-03-10-58"
+title: "分布式事务"
+headWord: "分布式听说很火,但是分布式事务有很难解决,so来了解了解"
+tags: ["分布式","sql","2PC","TCC","异步补偿"]
+categories:
+- "数据库"
+- "分布式事务"
---
## 前言
diff --git a/数据库/分布式/数据库事务四个特性及隔离级别.md b/数据库/分布式/数据库事务四个特性及隔离级别.md
index c504d84..9df6b97 100644
--- a/数据库/分布式/数据库事务四个特性及隔离级别.md
+++ b/数据库/分布式/数据库事务四个特性及隔离级别.md
@@ -1,10 +1,11 @@
---
-id="2018-10-02-10-58"
-title="数据库4个特性及隔离级别"
-headWord="了解,了解。"
-tags=["acid","sql","事务"]
-category="数据库"
-serie="分布式事务"
+id: "2018-10-02-10-58"
+title: "数据库4个特性及隔离级别"
+headWord: "了解,了解。"
+tags: ["acid","sql","事务"]
+categories:
+- "数据库"
+- "分布式事务"
---
## 一、 数据库事务四大特性 ACID
diff --git a/数据库/基础/1.mysql使用查询结果进行插入操作.md b/数据库/基础/1.mysql使用查询结果进行插入操作.md
index 0c1e612..42cbcf1 100644
--- a/数据库/基础/1.mysql使用查询结果进行插入操作.md
+++ b/数据库/基础/1.mysql使用查询结果进行插入操作.md
@@ -1,10 +1,11 @@
---
-id="2019-01-25-09-48"
-title="mysql使用查询结果进行插入操作"
-headWord="经常在使用mysql的过程中想要从一张表中查出一些数据插入到另一张表中,操作如下。"
-tags=["mysql","select","insert"]
-category="数据库"
-serie="分布式事务"
+id: "2019-01-25-09-48"
+title: "mysql使用查询结果进行插入操作"
+headWord: "经常在使用mysql的过程中想要从一张表中查出一些数据插入到另一张表中,操作如下。"
+tags: ["mysql","select","insert"]
+categories:
+- "数据库"
+- "分布式事务"
---
**本篇原创发布于:**[FleyX 的个人博客](tapme.top/blog/detail/2019-01-25-09-48)
diff --git a/算法/leetcode/Q807 保持城市天际线(Max Increase to Keep City Skyline).md b/算法/leetcode/Q807 保持城市天际线(Max Increase to Keep City Skyline).md
index 1f17b32..6d8478e 100644
--- a/算法/leetcode/Q807 保持城市天际线(Max Increase to Keep City Skyline).md
+++ b/算法/leetcode/Q807 保持城市天际线(Max Increase to Keep City Skyline).md
@@ -1,10 +1,11 @@
---
-id="2019-01-02-17-15"
-title="Q807 保持城市天际线(Max Increase to Keep City Skyline)"
-headWord="leetcode刷题,题目详情见点击跳转"
-tags=["java", "leetcode","array",'leetcode']
-category="算法"
-serie="leetcode刷题"
+id: "2019-01-02-17-15"
+title: "Q807 保持城市天际线(Max Increase to Keep City Skyline)"
+headWord: "leetcode刷题,题目详情见点击跳转"
+tags: ["java", "leetcode","array",'leetcode']
+categories:
+- "算法"
+- "leetcode刷题"
---
### 解析思路
diff --git a/网络/nat模式虚拟机主机相互ping通.md b/网络/nat模式虚拟机主机相互ping通.md
index 13e3aa8..c70c8d0 100644
--- a/网络/nat模式虚拟机主机相互ping通.md
+++ b/网络/nat模式虚拟机主机相互ping通.md
@@ -1,10 +1,11 @@
---
-id="2018-08-04-10-58"
-title="nat模式虚拟机主机相互ping通"
-headWord="如题。"
-tags=["vmware","nat","ping","ubuntu"]
-category="java"
-serie="正则匹配"
+id: "2018-08-04-10-58"
+title: "nat模式虚拟机主机相互ping通"
+headWord: "如题。"
+tags: ["vmware","nat","ping","ubuntu"]
+categories:
+- "java"
+- "正则匹配"
---
## 1、wmware 设置