学而时习之

优雅的编程者
2022-07 31

优雅的编程者

优雅的编程者终端篇优雅的编程者修行从打造一款高效颜值双具备的终端开始。iterm2On my zshpowerlevel10ktmux效果安装iterm2下载地址:https://iterm2.com/font:nerd-fonttheme:salarized dark安装zsh开源地址:https

查看更多
常用shell命令
2022-06 24

常用shell命令

常用shell命令外观样式shell输出颜色命令格式:echo -e "\033[字背景颜色;文字颜色m字符串\033[0m" 命令示例:echo -e "\033[30m 黑色字 \033[0m" echo -e "\033[31m 红色字 \03

查看更多
2020-6月读书
2022-06 15

2020-6月读书

2020-6月读书6月读书目录《活着》-余华《包法利夫人》-福楼拜《挪威的森林》-村上春树《水浒传》-施耐庵活着挪威的森林包法利夫人水浒传

查看更多
中国文化发展史
2022-06 15

中国文化发展史

中国文化发展史最近一段时间看啦中国文化发展相关的书籍,看的模模糊糊,特此整理一下,突然清晰不少相关资料参考百度百科,如有错误请指正唐代三绝 张旭草书、裴旻舞剑、李白诗歌

查看更多
死磕设计模式—适配器模式
2022-06 15

死磕设计模式—适配器模式

死磕设计模式—适配器模式前言(八问知识体系)1.简介什么是适配器模式?1.将一个接口转换成客户希望的另一个接口,适配器模式使接口不兼容的那些类可以一起工作2.适配器模式既可以作为类结构型模式,也可以作为对象结构型模式3.适配器模式属于结构型模式4.适配器实现了统一管理,一个目标是适配接口对象多个适配

查看更多
死磕设计模式—建造者模式
2022-06 15

死磕设计模式—建造者模式

死磕设计模式—建造者模式前言(八问知识体系)1.1.简介什么是建造模式?1.将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示2.建造者模式是一步一步创建一个复杂的对象,建造者模式注重的是一步一步的创建复杂对象。这个和工厂模式存在区别建造模式的优缺点?优点1.将产品本身和其创建

查看更多
死磕设计模式—工厂模式
2022-06 15

死磕设计模式—工厂模式

死磕设计模式—工厂模式前言(八问知识体系)1.1.简介简单工厂模式属于创建型模式,属于工厂模式中的一种,简单工厂模式就是由一个工厂对象来决定创建出一种具体的产品在简单工厂模式中,我们会定义一个创建对象的类,多使用反射的方法来创建具体产品实例,这个类用来封装实例化对象的行为。在软件开发中,当我们需要大

查看更多
sonar
2022-06 15

sonar

sonar1.1.sonar简介代码质量管理工具:sonar,sonar(SonarQube)是一个开源平台,用于管理源代码的质量,它不仅是一个质量数据报告工具,更是代码质量管理平台。它通过插件的形式来管理代码,它支持的语言包括:Java,PHP,C#,C等。1.2.docker compose安装

查看更多
ElasticSearch—(提高篇)
2022-06 15

ElasticSearch—(提高篇)

ElasticSearch—(提高篇)前言Elasticsearch的简单入门请参考之前写的一篇文章Elasticsearch简单入门篇,这篇简单介绍啦Elasticsearch的基本安装、Docker安装方法、基本的概念,以及如何使用Java代码实现对Elasticsearch的CRUD操作等入门

查看更多
IDEA插件使用推荐
2022-06 15

IDEA插件使用推荐

IDEA插件使用推荐工欲善其事,必先利其器1.1.Visualvm Launcher使用 VisualVM 进行性能分析及调优这个插件执行的是jdk安装目录中的bin目录下的jvisualvm工具。安装后配置命令路径即可在方法上运行就可监控结果如下1.2.查看字节码这个不是插件,只是在IDEA中配置

查看更多
死磕设计模式—单例模式
2022-06 15

死磕设计模式—单例模式

死磕设计模式—单例模式1.1.简介例如在Java开发中,我们都知道类和对象实例可以通过new来创建一个或者多个,而单例模式就是采取一定的办法保证整个系统中某一个类只能存在唯一一个对象实例,并且获取该类实例的方法只能是该类自己提供的一个获取其实例的静态方法。1.2.使用样例例如在Spring源码中的d

查看更多
设计模式之UML类图
2022-06 15

设计模式之UML类图

设计模式之UML类图文章封面由代号为g提供UML类图可以很清晰的表达程序的设计,在程序开发中各种类存在不同的依赖关系,在UML中使用不同的箭头来表达类之间的关系,例如依赖关系、关联关系、泛化关系、实现关系、组合关系和聚合关系*。可以使用StartUML工具或者Rose工具来画类图,但是已经2019年

查看更多
死磕Java——ReentrantLock
2022-06 15

死磕Java——ReentrantLock

死磕Java——ReentrantLockReentrantLock是java.util.concurrent.locks包下一个可重入的默认是非公平的锁,ReentrantLock类是Lock接口的一个使用很频繁的实现类,类结构如下图:前面说过JMM模型要求的是可见性,原子性和有序性。解决原子性的

查看更多
死磕Java——多线程下的集合
2022-06 15

死磕Java——多线程下的集合

死磕Java——多线程下的集合1.1.ArrayList都知道ArrayList是线程不安全的,如果在多线程下使用了ArrayList会产生什么样的情况,简单看一段代码。public static void main(String[] args) { List<String> li

查看更多
死磕Java——CAS
2022-06 14

死磕Java——CAS

死磕Java——CAS前面我们说到volatile不保证原子性,解决办法就是使用AtomicInteger代替int,但是为什么使用AtomicInteger就可以保证了原子性了,是因为AtomicInteger实现的就是CAS思想和Unsafe的支持。1.1.CAS是什么AtomicInteger

查看更多
死磕Java——volatile
2022-06 14

死磕Java——volatile

死磕Java——volatile1.1.JMM内存模型理解volatile的相关知识前,先简单的认识一下JMM(Java Memory Model),JMM是jdk5引入的一种jvm的一种规范,本身是一种抽象的概念,并不真实存在,它屏蔽了各种硬件和操作系统的访问差异,它的目的是为了解决由于多线程通过

查看更多
GitHub
2022-06 14

GitHub

GitHub1.1.使用in限制搜索Blog in:nameBlog in:name,descriptionBlog in:name,description,readme1.2.根据stars和forks数筛选springboot stars:>=5000springboot forks:&g

查看更多
Docker
2022-06 14

Docker

Docker撸一门技术,必先登其官网,扒其皮,喝其血官网地址:https://docs.docker.com中文网址:https://www.docker-cn.comDocker 中国官方镜像加速地址:https://www.docker-cn.com/registry-mirrorDocker

查看更多
改善Java程序的一些建议
2022-06 14

改善Java程序的一些建议

改善Java程序的一些建议The reasonable man adapts himself to the world: the unreasonable one persists in trying to adapt the world to himself.1.不要在变量或者常量中出现易混淆的字

查看更多
Java8 Date
2022-06 14

Java8 Date

Java8 Date前言:时间操作在开发中经常被使用到,最近项目是用Java8开发,因此总结一下时间操作常用方法。1.常用方法总结1.1.获取当前时间// 当前日期:2019-03-16LocalDate date = LocalDate.now();// 当前时间:22:13:03.450Loca

查看更多
ElasticSearch初级
2022-06 13

ElasticSearch初级

ElasticSearch初级撸一门技术,必先登其官网,扒其皮,喝其血官网地址:https://www.elastic.co/products/elasticsearch官方中文文档地址:https://www.elastic.co/guide/cn/elasticsearch/guide/curr

查看更多
HashMap原理分析
2022-06 13

HashMap原理分析

HashMap原理分析HashMap采用数组+链表的数据结构,只是在jdk1.7和1.8的实现上有所不同,下面,简单的分析一下,方便自己更加深刻的理解这种典型的key-value的数据结构。1.1.jdk1.7实现原理简单分析1.7的HashMap数据结构图也可以这么理解在jdk1.8之前,Hash

查看更多
Guava MultiSet
2022-06 13

Guava MultiSet

Guava MultiSet首先,我们来假定一个场景,统计一个词在文档中出现了多少次,传统的做法是这样的:。我们可以这样来实现,Map<String, Integer> counts = new HashMap<String, Integer>();for (String w

查看更多
Google Guava
2022-06 13

Google Guava

Google Guava在Java Collections API中,我们经常会使用到list、map、Collection、Arrays、Collections等等。今天,我们就来学习总结一下org.apache.commons.collections的常用类。org.apache.commons

查看更多
Apache MapUtils
2022-06 13

Apache MapUtils

Apache MapUtils官方文档传送门:MapUtils本篇笔记的基础示例数据代码如下:HashMap<String, Object> map = new HashMap<>();map.put("name","zhangsan"

查看更多
Apache CollectionUtils
2022-06 13

Apache CollectionUtils

Apache CollectionUtils1.1.CollectionUtils常用方法集合判空isEmpty(Collection coll)判断集合是否为空,当然,isNotEmpty(Collection coll)判断集合不为空。String[] arr = {"H",

查看更多
Apache DateUtils
2022-06 13

Apache DateUtils

Apache DateUtils1.1.常用的日期判断isSameDay(final Date date1, final Date date2):判断两个时间是否是同一天;isSameInstant(final Date date1, final Date date2):判断两个时间是否为同一毫秒常

查看更多
Apache ArrayUtils
2022-06 13

Apache ArrayUtils

Apache ArrayUtils1.1.数组的常用判断方法isEmpty(final Object[] array):判断数组是否为空;isNotEmpty(final float[] array):判断数组是否不为空;isSameLength(final char[] array1, final

查看更多
Apache StringUtils
2022-06 13

Apache StringUtils

Apache StringUtils1.1.判断是否空字符串isBlank(final CharSequence cs):判断是空字符串;isNotBlank(final CharSequence cs):判断不是空字符串;isEmpty(final CharSequence cs):判断是空字符串

查看更多
ES6核心知识
2022-06 13

ES6核心知识

ES6核心知识1. let和const关键字1.1 let关键字作用:与var类似,用于声明一个变量特点 在块作用域内有效,不能重复声明,不会预处理,不存在变量提升应用:循环遍历加监听<body> <button>按钮1</button> <bu

查看更多
Vue核心知识
2022-06 13

Vue核心知识

Vue核心知识1.1.Vue的基本简介学习一门技术首先登陆其官网,中文网址,英文网址,vue是一款渐进式JavaScript框架,作用是为了动态构建用户界面,该框架遵循MVVM模式,编码简洁,体积小,运行效率高;他借鉴了angular的模板和数据绑定技术,借鉴了react的组件化和虚拟DOM技术,当

查看更多
JavaScript初级知识
2022-06 13

JavaScript初级知识

JavaScript初级知识JavaScript基础知识脑图总结JavaScript简介大家都知道Html+CSS+JavaScript是前端入门的三门基本课程,其中Javascript应该是最难的,也是可以解决很多很多问题的,这篇笔记只是介绍JavaScript的基础知识,后面随着学习的深入,将会

查看更多
CSS3新特性
2022-06 13

CSS3新特性

CSS3思维导图总结前言css的全称是什么?——casccading style sheets样式表的组成?——选择器+声明块浏览器杜宇编译css的顺序?——div ul li #test从右往左选择器基本选择器通配符选择器——* {margin:0;}元素选择器——body {background

查看更多
CSS2基础知识总结
2022-06 13

CSS2基础知识总结

SS 指层叠样式表 (Cascading Style Sheets) ,简单讲就是定义如何显示 HTML 元素 ,CSS 规则由两个主要的部分构成:选择器,以及一条或多条声明

查看更多
Html初级知识总结
2022-06 13

Html初级知识总结

Html不是编程语言,而是用来描述网页结构的一种标记语言 ,简单的说就是给展示在网页上的文本加上表示文本含义的标签,让人们可以更好的理解

查看更多
Ghost博客安装
2022-06 13

Ghost博客安装

Ghost 是一个为博客和出版物而设计的内容平台,基于Markdown的编辑环境支持快速格式化及无缝的创作体验,将焦点完全放在正在创建的内容上。 并排实时预览可让您随时查看文章的显示方式。

查看更多
毕棚沟·避暑好地方
2022-06 12

毕棚沟·避暑好地方

毕棚沟真的很美,小道很安静,散步很惬意。

查看更多
济南·课本中的城市
2022-06 12

济南·课本中的城市

济南,一座并不是完美的旅行城市,没有三亚看日升日落那么美好,没有深圳世界之窗那样繁华,没有厦门鼓浪屿那样文艺,但也有自己特色

查看更多
青岛·一座安静的城市
2022-06 12

青岛·一座安静的城市

在海边散散步,吹吹风,或者散步在各个街道小巷子里,看着别人的故事,走着自己的路,自在随心。

查看更多
挪威的森林
2022-06 12

挪威的森林

2020-6月读书6月读书目录《活着》-余华《包法利夫人》-福楼拜《挪威的森林》-村上春树《水浒传》-施耐庵活着挪威的森林包法利夫人水浒传

查看更多
MybatisPlus
2022-05 16

MybatisPlus

MyBatis-Plus (opens new window)(简称 MP)是一个 MyBatis (opens new window)的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。

查看更多
SpringCloud
2022-05 16

SpringCloud

SpringCloud,基于SpringBoot提供的一套微服务解决方案,包括服务注册与发现,配置中心,全链路监控,服务网关,负载均衡,等组件

查看更多
JDK8 新特性
2022-05 16

JDK8 新特性

Java 8 (又称为 jdk 1.8) 是 Java 语言开发的一个主要版本。 Oracle 公司于 2014 年 3 月 18 日发布 Java 8 ,它支持函数式编程,新的 JavaScript 引擎,新的日期 API,新的Stream API 等

查看更多
MyBatis
2022-05 09

MyBatis

MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集

查看更多