认识正念
SpringBoot 项目配置
概述
springboot 的出现大大方便了 java 者使用 spring 开发项目,springboot 项目中使用配置简化了代码,同时也增加了项目的灵活性。这篇文章讲解了在springboot 项目中使用的常见配置项,还介绍了如何使用自定义的配置项,以及让自定义的配置项拥有代码提示。
SpringBoot 的配置文件
在 springboot 项目中,配置文件默认是在 src/main/resources
目录下的 application.properties
文件,同时 springboot 支持使用 yml 格式的配置文件,只需要将文件 application.properties
的文件后缀改为 .yml
即可,使用 yml 配置文档结构鲜明,阅读和书写起来也更加友好。
-
application.properties
1
server.port=8080
-
application.yml
1
2server:
port: 8080
算法之回溯算法
设计模式之访问者模式
概述
这篇文章介绍了访问者模式(Visitor Pattern)的概念、优缺点、使用场景以及代码示例。
访问者模式的定义
Represent an operation to be performed on the elements of an object structure. Visitor lets you define a new operation without changing the classes of the elements on which it operates.
封装一些作用于某种数据结构中的各元素的操作,它可以在不改变数据结构的前提下定义作用于用于这些元素的新的操作。
——《设计模式之禅》
访问者模式的目的是将数据结构和操作分离,用于数据结构固定,操作易变的场景,例如给不同的主管生成不同的报表。
UML 类图
- Visitor 抽象访问者,接口或抽象类,申明访问者可以访问哪些元素,通过
visit
方法的参数来定义哪些对象可以访问。- ConcreateVisitor 具体访问者,定义了对每个元素访问时的具体操作
- Element 抽象元素,接口或抽象类,申明接受哪一类访问者,通过
accept
方法参数来指定。- ConcreateElement 具体元素,实现
accept
方法,通常都是visitor.visit(this)
- ObjectStruture 结构对象,元素产生者,一般容纳在多个不同类、不同接口的容器,如 List、Set、Map 等。
网络抓包分析工具——Wireshark
快速阅读技巧
概述
这本书是阅读了日本作家 印南墩史 的《快速阅读术》,总结出来的快速阅读理念和技巧。
关于阅读的问题
毕业之后,要做的事情越来越多了,要处理工作和生活中的琐事,再也不能像上学时,有大把的时间用来学习,用来阅读。现在回想起大学里,那些被浪费的大把时间,真让人唏嘘。其实那个时候,时不时会想看点书,然后就去图书馆借一堆书回来,但总是翻完前几页就丢下了,下一次拿起来又从头开始看,然后把那几页看完又放下了,结果就是两周过去了,该还书了,看过的只有那几页。大学的时候,没有多少课业压力,除去上课时间,还有大把的富余时间,当然其中很大比例都被用来打游戏了,虽然很快乐,但现在回想起来,那时过的真是单调,明明可以更丰富多彩的。现在工作了,大部分时间被工作塞满,空隙又被填入各种生活琐事,留下的私人时间所剩无几,而且基本上都是碎片时间,这些碎片里基本上都交给手机了,就算是拿来阅读也似乎做不了什么。
前些年,每当网购平台开始促销的时候,总会去领很多优惠券,其中也包括图书的优惠券,那些券看起来真的很诱人,能用低于五折的价格买下很多书。于是,我果真买了一堆书回来,然后堆到了书架上,然后,然后就一直堆在那了。几年后,我付出的金钱让我的书架收获满满,顺带让我也有了一丝 “成就”。再后来,书架放不下新书了,于是我买了一块 kindle,买它的初衷当然不是用来盖泡面,或者垫枕头,后来它的确发挥了应有作用,我用它看完了半部网络小说,算是收回了一点成本。每当我想及此事的时候,就非常庆幸买的是最便宜的 kindle 型号。
认识和投资指数基金
认识 GraphQL
概述
GraphQL 是 FaceBook 开发并开源的一种针对 Graph(图状数据)查询设计的查询语言(Query Language),旨在提供 RESTful 架构体系的替代方案,其优势是查询图状数据。值得注意的是 GraphQL 没有和任何特定数据库或存储引擎绑定,本身更不是一种数据库。这篇文章介绍了 Graph QL 的概念以及应用场景。
什么是 GraphQL
GraphQL 是一种用于 API 的查询语言,也是一个满足你数据查询的运行时。 GraphQL 对你的 API 中的数据提供了一套易于理解的完整描述,使得客户端能够准确地获得它需要的数据,而且没有任何冗余,也让 API 更容易地随着时间推移而演进,还能用于构建强大的开发者工具。