了解了 B 树后再来了解下它的变形版:B+ 树,它比 B 树的查询性能更高。
一棵 B+ 树需要满足以下条件:
- 节点的子树数和关键字数相同(B 树是关键字数比子树数少一)
- 节点的关键字表示的是子树中的最大数,在子树中同样含有这个数据
- 叶子节点包含了全部数据,同时符合左小右大的顺序
了解了 B 树后再来了解下它的变形版:B+ 树,它比 B 树的查询性能更高。
一棵 B+ 树需要满足以下条件:
本文提到的「B-树」,就是「B树」,都是 B-tree 的翻译,里面不是减号-,是连接符-。因为有人把 B-tree 翻成 「B-树」,让人以为「B树」和「B-树」是两种树,实际上两者就是同一种树。
定义:
数据结构是指相互之间存在一种或多种特定关系的数据元素的集合
数据结构中的元素之间除了“同属一个集合” 的相互关系外,别无其他关系;
数据结构中的元素存在一对一的相互关系
数据结构中的元素存在一对多的相互关系;
数据结构中的元素存在多对多的相互关系。
常见的数据结构:数组、队列、栈、链表、树、图、堆、散列表
由于SpringBoot默认是打成 jar包的,一旦使用war包部署注意:
application.properties 中配置server.servlet.context-path、server.port 失效拦截器(Interceptor ) 拦截、中断的意思,类似于 JavaWeb中的Filter,但不如Filter拦截的范围大。
通过将控制器中的通用代码放在拦截器中执行,减少控制器中的代码冗余。
SpringBoot是对原有项目中Spring框架和SpringMVC框架的进一步封装,因此在SpringBoot中同样支持Spring框架的AOP切面编程,不过在SpringBoot中为了快速开发,仅需要注解就可以开发切面编程。
为了进一步提高开发效率,springboot为我们提供了全局项目热部署,日后在开发过程中修改了部分代码以及相关配置文件后,不需要每次重启使修改生效,在项目中开启了springboot全局热部署之后只需要在修改之后等待几秒即可使修改生效。
SpringBoot官方推荐了两种方式:
在使用时必须在页面中加入下面命名空间:
1 | <html lang="en" xmlns:th="http://www.thymeleaf.org"> |