Skip to content

Commit

Permalink
add toc to markdown
Browse files Browse the repository at this point in the history
  • Loading branch information
rbmonster committed Nov 28, 2020
1 parent fd3fef2 commit 5eb5419
Show file tree
Hide file tree
Showing 32 changed files with 59 additions and 16 deletions.
4 changes: 2 additions & 2 deletions src/main/java/com/TOC-new.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
"""生成目录列表中的某一项"""
def creat_directory_line(line,headline_mark,i):
if headline_mark == '#':
return '<a href="#' + str(i) + '">' + line[2:-1] + "</a> \n"
return '<a href="#' + str(i) + '">' +line[2:-1] + "</a> \n"
elif headline_mark == '##':
#&emsp;为Markdown中的一种缩进,这里不直接用空格作为缩进是因为多个空格一起出现可能会生成代码块,引发歧义
return '&emsp;<a href="#' + str(i) + '">' + line[3:-1] + "</a> \n"
Expand All @@ -25,7 +25,7 @@ def creat_directory_line(line,headline_mark,i):
def creat_directory(f):
i = 0
directory = []
directory.append('<a name="index">**Index**</a>\n')
directory.append('<a name="index">**Index**</a>\n\n')
for line in f:
lines_in_file.append(line)
f.close()
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/com/four/SPRINGBOOT.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#Spring boot
# Spring boot

## Spring boot start
![avatar](https://github.com/rbmonster/learning-note/blob/master/src/main/java/com/four/picture/springBootLoadother.png)
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/ALGORITHM.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">算法</a>
&emsp;<a href="#1">哈希表</a>
&emsp;<a href="#2">数组与字符串</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/CODEDESIGN_BOOK.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">head first 设计模式</a>
&emsp;&emsp;<a href="#1">设计原则: </a>
&emsp;&emsp;<a href="#2">策略模式</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/COLLECTION.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">集合</a>
&emsp;<a href="#1">List</a>
&emsp;&emsp;<a href="#2">数据结构及源码分析</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/COLLECTION_BOOK.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

&emsp;<a href="#0">集合容器</a>
&emsp;&emsp;<a href="#1">list相关</a>
&emsp;&emsp;<a href="#2">Set相关:</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/CONCURRENT.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">java并发</a>
&emsp;<a href="#1">基本概念</a>
&emsp;&emsp;&emsp;<a href="#2">分工</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/CONCURRENTTOOL.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">Java并发相关工具类</a>
&emsp;<a href="#1">AQS 相关</a>
&emsp;&emsp;<a href="#2">AbstractQueuedSynchronizer AQS 基础类</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/CONCURRENT_BOOK.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

&emsp;&emsp;<a href="#0">线程</a>
&emsp;&emsp;&emsp;<a href="#1">线程状态</a>
&emsp;&emsp;&emsp;<a href="#2">创建一个线程的开销</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/DISTRIBUTED-SYSTEM.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">分布式系统</a>
&emsp;<a href="#1">经典基础理论</a>
&emsp;&emsp;<a href="#2">系统设计理念</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/FILTERANDINTERCEPTOR.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">MVC 拦截器与过滤器</a>
&emsp;<a href="#1">过滤器 servlet</a>
&emsp;<a href="#2">拦截器</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/INTERFACE_DESIGN.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

&emsp;&emsp;<a href="#0">接口设计</a>
&emsp;&emsp;&emsp;<a href="#1">一些概念</a>
&emsp;&emsp;<a href="#2">URL 设计</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/INTERVIEW.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

&emsp;&emsp;<a href="#0"> 读已提交和可重复读是如何实现的?</a>
&emsp;&emsp;<a href="#1">读已提交和可重复读区别。</a>
&emsp;&emsp;<a href="#2"> 数据库数据库一致性是如何实现的?</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/JAVA_BASE.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">Java 基础</a>
&emsp;<a href="#1">基本数据类型</a>
&emsp;&emsp;<a href="#2">包装类型</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/JAVA_IO.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

&emsp;&emsp;<a href="#0"><a name="0">策略模式</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a></a>
<a href="#1">Java IO </a>
&emsp;<a href="#2">基本概念</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/JVM.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">JVM </a>
&emsp;<a href="#1">一、虚拟机数据区</a>
&emsp;&emsp;&emsp;<a href="#2">对象的访问</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/JVM_BOOK.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">Java虚拟机</a>
&emsp;<a href="#1">一、虚拟机数据区说明</a>
&emsp;<a href="#2">二、垃圾收集器与内存分配策略</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/LIFECYCLE.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">bean初始化流程</a>
&emsp;<a href="#1">接口介绍</a>
&emsp;&emsp;<a href="#2">Bean的完整生命周期及方法调用</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/MESSAGEQUEUE.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">消息队列</a>
&emsp;<a href="#1">异步、削峰、解耦</a>
&emsp;&emsp;&emsp;&emsp;<a href="#2">异步</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/MYBATIS.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">MyBatis </a>
&emsp;&emsp;<a href="#1">执行流程</a>
&emsp;&emsp;<a href="#2">1、#{}和${}的区别是什么?</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/MYSQL_BOOK.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">MySql实战45讲</a>
&emsp;<a href="#1">mysql整体的架构</a>
&emsp;&emsp;<a href="#2">连接器</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/NETTY.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">Netty</a>
&emsp;&emsp;<a href="#1">netty 是什么</a>
&emsp;&emsp;<a href="#2">Reactor 模式</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/NETWORK.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">计算机网络</a>
&emsp;<a href="#1">网络模型</a>
&emsp;<a href="#2">TCP 三次握手和四次挥手</a>
Expand Down
13 changes: 13 additions & 0 deletions src/main/java/com/toc/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
<a name="index">**Index**</a>

&emsp;&emsp;<a href="#0">适配器模式</a>
### <a name="0">适配器模式</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
- 适配器模式,作为连接两个接口的桥梁,把一个类的接口变换成客户端所期待的另一种接口,从而使原本接口不匹配而无法一起工作的两个类能够在一起工作。

- target: 期待调用的接口
- Adaptee:需要适配的接口
- Adapter: 适配器通过继承Target,调用target的接口,实际适配到调用Adaptee方法

- another version中的方法为抽象了Adaptee,适配继承的情况。并在Adapter向上转型设值调用

![Image text](https://upload-images.jianshu.io/upload_images/944365-24c6bf44da1b79ad.png?imageMogr2/auto-orient/strip|imageView2/2/w/510/format/webp)
1 change: 1 addition & 0 deletions src/main/java/com/toc/REDIS.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">Redis 基础</a>
&emsp;<a href="#1">基本数据结构</a>
&emsp;&emsp;<a href="#2">String 字符串</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/REDIS_BOOK.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">Redis 设计与实现</a>
&emsp;<a href="#1">Redis底层数据结构</a>
&emsp;&emsp;<a href="#2">简单动态字符串SDS</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/SORT_ALGORITHM.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">排序算法</a>
&emsp;<a href="#1">冒泡排序</a>
&emsp;<a href="#2">快速排序</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/SOURCECODE.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">Spring源码</a>
&emsp;<a href="#1">Spring IOC初始化(暂时不看)</a>
&emsp;&emsp;<a href="#2">invokeBeanFactoryPostProcessors(beanFactory);</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/SPRING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">Spring </a>
&emsp;<a href="#1">Spring IOC & AOP</a>
&emsp;&emsp;<a href="#2">Spring IOC</a>
Expand Down
28 changes: 15 additions & 13 deletions src/main/java/com/toc/SPRINGBOOT.md
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
<a name="index">**Index**</a>
&emsp;<a href="#0">Spring boot start</a>
&emsp;<a href="#1">spring 构造方法</a>
&emsp;<a href="#2">Spring boot的run方法</a>
&emsp;<a href="#3">prepare准备上下文</a>
&emsp;<a href="#4">refresh方法</a>
&emsp;<a href="#5">spring boot相关知识</a>
#Spring boot

## <a name="0">Spring boot start</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
<a href="#0">Spring boot </a>
&emsp;<a href="#1">Spring boot start</a>
&emsp;<a href="#2">spring 构造方法</a>
&emsp;<a href="#3">Spring boot的run方法</a>
&emsp;<a href="#4">prepare准备上下文</a>
&emsp;<a href="#5">refresh方法</a>
&emsp;<a href="#6">spring boot相关知识</a>
# <a name="0">Spring boot </a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>

## <a name="1">Spring boot start</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
![avatar](https://github.com/rbmonster/learning-note/blob/master/src/main/java/com/four/picture/springBootLoadother.png)

![avatar](https://github.com/rbmonster/learning-note/blob/master/src/main/java/com/four/picture/spingLoad.jpg)

## <a name="1">spring 构造方法</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
## <a name="2">spring 构造方法</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
```
@SuppressWarnings({ "unchecked", "rawtypes" })
public SpringApplication(ResourceLoader resourceLoader, Class<?>... primarySources) {
Expand All @@ -28,7 +30,7 @@ public SpringApplication(ResourceLoader resourceLoader, Class<?>... primarySourc
this.mainApplicationClass = deduceMainApplicationClass();
}
```
## <a name="2">Spring boot的run方法</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
## <a name="3">Spring boot的run方法</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
```
// spring boot start
public ConfigurableApplicationContext run(String... args) {
Expand Down Expand Up @@ -81,7 +83,7 @@ public SpringApplication(ResourceLoader resourceLoader, Class<?>... primarySourc
}
```

## <a name="3">prepare准备上下文</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
## <a name="4">prepare准备上下文</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
```
private void prepareContext(ConfigurableApplicationContext context, ConfigurableEnvironment environment,
SpringApplicationRunListeners listeners, ApplicationArguments applicationArguments, Banner printedBanner) {
Expand Down Expand Up @@ -126,7 +128,7 @@ public SpringApplication(ResourceLoader resourceLoader, Class<?>... primarySourc
}
```

## <a name="4">refresh方法</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
## <a name="5">refresh方法</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
调用上下文的refresh方法
- AbstractRefreshableApplicationContext:这个类在每次调用refresh方法的时候都会产生一个新的beanfactory实例(通常是,但是不是必须的)。这个应用上下文会通过一系列的配置文件去加载BeanDefinition。在调用refresh方法的时候才会创建内部持有的BeanFacoty实例(可以参见该类中的refreshBeanFactory方法)
- GenericApplicationContext:这个类内部持有唯一的一个DefaultListableBeanFactory实例,而且相较于其它ApplicationContext的实现类,这个类在创建的时候就会有一个BeanFactory的实例,意思就是在refresh方法调用前,内部持有的BeanFactory实例就已经创建,且这个类从开始到最终都是一个BeanFacoty实例。
Expand Down Expand Up @@ -225,7 +227,7 @@ public SpringApplication(ResourceLoader resourceLoader, Class<?>... primarySourc

---

## <a name="5">spring boot相关知识</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
## <a name="6">spring boot相关知识</a><a style="float:right;text-decoration:none;" href="#index">[Top]</a>
![avatar](https://github.com/rbmonster/learning-note/blob/master/src/main/java/com/four/picture/BootStrapLoad.png)
Spring Cloud 构建于 Spring Boot 之上,在 Spring Boot 中有两种上下文,一种是 bootstrap,另外一种是 application,
- application 配置文件这个容易理解,主要用于 Spring Boot 项目的自动化配置。
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/THREAD.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">java 并发线程相关</a>
&emsp;&emsp;<a href="#1">线程状态</a>
&emsp;&emsp;&emsp;<a href="#2">创建一个线程的开销</a>
Expand Down
1 change: 1 addition & 0 deletions src/main/java/com/toc/ZOOKEEPER.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
<a name="index">**Index**</a>

<a href="#0">zookeeper</a>
&emsp;<a href="#1">基本概念</a>
&emsp;&emsp;<a href="#2">ZooKeeper概述</a>
Expand Down

0 comments on commit 5eb5419

Please sign in to comment.