自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(121)
  • 收藏
  • 关注

原创 【windows】autohotkey 使用hjkl 移动方向

配置内容#h::Send, {Left}#l::Send, {Right}#j::Send, {Down}#k::Send, {Up}# 代表win键

2022-05-09 10:59:05 791

原创 idea vim 配置

imap jk imap kj set timeoutlen=300set keep-english-in-normal-and-restore-in-insertset keep-english-in-normalset clipboard=unnamedset ignorecase

2022-02-08 20:14:08 1771

原创 【死磕-springboot第三篇】prepareEnvironment

【死磕-第三篇】prepareEnvironment导读上一篇讲述了,获取运行监听器,然后调用starting方法,干了些什么这一篇主要讲springApplication.run这个流程中准备环境的这个过程1. 源码详解/** * Run the Spring application, creating and refreshing a new * {@link ApplicationContext}. * 翻译:运行一个spring程序,创建并且刷新一个新的Applica

2021-10-10 18:15:26 1095 1

原创 【死磕springboot-第二篇】getRunListeners

1.BackgroundPreinitializer @Override public void onApplicationEvent(SpringApplicationEvent event) { // 判断系统属性中是否为 spring.backgroundpreinitializer.ignore = false(默认为false) // 判断事件是不是 ApplicationStartingEvent或他的子类 // 判断是否支持多进程

2021-09-13 21:38:46 619

原创 【死磕springboot-第一篇】创建SpringApplication对象

【死磕-第一篇】创建SpringApplication对象导读每次每次!!!!,面试就看spring的源码,各种视频笔记到处看一点,没有系统的从头到尾学习这次!!,我一定要从main开始到结束,全部看完!!我们先从main开始看源码,然后按照调用函数的步骤,一步一步以代码的形式跳转到这篇主要讲述的内容讲完核心的东西之后,会以问题的形式讲述从跳转过来这部分没有讲的代码这样的步骤讲是因为,一步一步讲的话,有一些东西后面用到了,但是当前代码看不出此代码的作用,所以看完核心代码后再讲述小细节比较

2021-09-07 21:51:25 569 1

原创 源码中的小妙用

记录Java源码中的一点小妙用记录一下大神的使用技巧,以便自己能用到位置: Stream.java | public static Stream iterate(final T seed, final UnaryOperator f) final Iterator<T> iterator = new Iterator<T>() { @SuppressWarnings("unchecked") T t = (

2021-08-13 15:57:51 47

原创 Maven 理解

MavenMaven 的理解maven 定义了一系列运行的流程,也就生命周期,但是这些生命周期是抽象的生命周期是抽象的理解maven的生命周期是抽象的,没有定义具体的逻辑,所有的逻辑都通过maven的插件来完成假如将生命周期类比为你上班的一天例如这一天中有一个流程是从家到公司(对应着生命周期中的一个周期),那么怎么去公司就是不确定的,你可以走路去公司,也可以坐地铁去公司,在maven中就将这个怎么去公司这件事交给了maven的插件,由他来具体定义具体的逻辑所以总结的说就是

2021-07-15 11:17:30 107 1

原创 数据库三大范式

数据库三大范式什么是数据库范式范式是“符合某一种级别的关系模式的集合,表示一个关系内部各属性之间的联系的合理化程度”。可以理解为一张数据表的表结构所符合的某种设计标准的级别等级有1NF,2NF,3NF,BCNF,4NF,5NF,而且等级高的必定符合等级低的标准第一范式(1NF)数据库中的每一列都是不可再分的关系型数据库中这是必然的,可以这样说,只要在关系型数据库中建立的表都是符合第一范式的第二范式(2NF)了解第二范式之前需要了解一些概念函数依赖完全函数依

2021-03-22 16:05:13 631

原创 手写自旋锁——SpinLock

手写自旋锁import java.util.concurrent.atomic.AtomicReference;import java.util.concurrent.locks.ReentrantLock;public class SpinLock { AtomicReference<Thread> atomicReference = new AtomicReference<>(); public void lock() { Threa.

2021-03-06 12:52:46 124

原创 CAP原则

CAP原则CAP原则又称CAP定理,指的是在一个分布式系统中,一致性(Consistency)、可用性(Availability)、分区容错性(Partition tolerance)。CAP 原则指的是,这三个要素最多只能同时实现两点,不可能三者兼顾。一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本)可用性(A):保证每个请求不管成功或者失败都有响应。分区容忍性(P):系统中任意信息的丢失或失败不会影响系统的继续运作。采用AP

2021-02-03 14:53:09 427 1

原创 LeetCode-MySQL-第二高的薪水

176. 第二高的薪水难度简单674SQL架构编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 。+----+--------+| Id | Salary |+----+--------+| 1 | 100 || 2 | 200 || 3 | 300 |+----+--------+例如上述 Employee 表,SQL查询应该返回 200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null。+--------

2020-11-18 13:42:59 84

转载 事务隔离级别和锁的关系

写的实在是太好了,具体参照一下链接https://tech.meituan.com/2014/08/20/innodb-lock.html

2020-10-17 23:07:50 170

原创 SpringBootApplication注解解析(流程分析)

@SpringBootApplication注解解析@SpringBootApplication是什么@SpringBootApplication表示这是SpringBoot的启动类@SpringBootApplicaiton注解@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited@SpringBootConfiguration@EnableAutoConfigura

2020-09-12 14:20:13 979 1

原创 iPhone连接Mac出现手机不断重连问题

手机连接mac出现不断重连的问题首先确保手机连接线没有问题使用命令 sudo killall -STOP -c usbd 进行修复sudo killall -STOP -c usbd命令含义给所有命令为usbd的进程发送一个停止的信号?

2020-09-12 11:38:18 1106

原创 Docker中Mysql乱码问题

Docker中Mysql乱码问题Mysql 乱码解决(Mysql可以启动的情况)如果你的mysql可以启动,那么可以直接进入mysql中修改配置文件步骤# 进入Mysql容器内部docker exec -i -t mysql_5.7 /bin/bash# 进入mysql的配置文件位置,编辑vim /etc/mysql/mysql.conf.d/mysqld.cnf################## 如果你没有vim或者vi,那就安装它# 先更新仓库apt-get up

2020-08-27 20:05:06 136

原创 Docker基础命令

Docker1. Linux下载Dockeryum install docker2. Docker常用命令搜索镜像docker search xxxdocker search tomcat# 官网仓库https://hub.docker.com/下载镜像# 下载xxxx的最新版本docker pull xxxxdocker pull tomcat# 下载xxxx的1.1版本docker pull xxxx:1.1docker pull tomcat:jdk8-ad

2020-08-21 08:04:40 108

原创 设计模式--------工厂模式

设计模式--------工厂模式介绍工厂模式的四大问题现在的写法有什么问题吗?为什么要用工厂模式?什么是工厂模式?工厂模式有什么好处?工厂模式细分简单工厂模式工厂方法模式抽象工厂模式采用一个案例来说明问题现有一个披萨店,需要根据不同的需求制作披萨常规思路创建一个抽象Pizza类,其中有一系列制作步骤方法,不同种类的Pizza继承此类创建一个PizzaStore类orderPizza(String type) : 根据传入的type制作不同种类的P

2020-08-10 15:43:01 139

原创 设计模式--------代理模式

设计模式--------代理模式介绍代理模式的三大问题什么是代理模式?代理模式有什么好处?常见的代理模式,以及应用场景什么是代理模式?代理模式:为另一个对象提供一个代表对象,以便控制客户对对象的访问(有多种管理方式)常见的使用场景远程代理:管理客户和远程对象的交互虚拟代理:控制访问实例化开销大的对象保护代理:管理调用者对对象方法的访问缓存代理,同步代理,防火墙代理等代理模式和装饰模式的不同之处:装饰模式是为对象增加新的行为代理模式是为了控制访问java

2020-08-09 13:35:08 93

原创 设计模式--------状态模式

设计模式--------状态模式介绍状态模式的三大问题现在的写法有什么问题?什么是状态模式?状态模式有什么好处?采用一个案例来说明问题现有一个手电筒,手电筒有五种模式,通过按下按钮来进行模式的切换常见思路创建一个手电筒类定义五种手电筒状态,并记录当前状态通过按钮方法来切换状态并调用相应的方法来执行操作MyLightpublic class MyLight { final static int NO_LIGHT = 0; fin

2020-08-07 14:24:26 109

原创 设计模式--------组合模式

设计模式--------组合模式介绍组合模式的三大问题什么是组合模式?组合模式有什么好处?采用一个案例来说明问题现有一个磁盘,磁盘中有文件夹也有文件,没有指定的文件夹层数,一个目录下有文件也可能有文件夹,采用一个好的方式,可以简单的遍历所有的文件,文件夹,以及可以按照指定的要求筛选​...

2020-08-07 00:06:12 95

原创 设计模式--------迭代器模式

设计模式--------迭代器模式介绍迭代器模式的四大问题现在的写法有什么问题吗?为什么要用迭代器模式?什么是迭代器模式?迭代器模式有什么好处?使用一个例子进行问题的说明有二个工厂仓库,它们分别存着一些产品,但是这二个工厂仓库存物品的仓库不一样,导致工作人员要清点检查每个产品的时候需要分开检查,有什么办法解决呢?Good 货物public class Good { private String name; private String desc

2020-08-05 21:12:25 101

原创 设计模式--------模版模式

设计模式--------模版模式介绍模版模式的四大问题现在的写法有什么问题吗?为什么要用模版模式?什么是模版模式?模版模式有什么好处?使用一个例子进行问题的说明假如要制作各种形状的面包,制作面包有很多的步骤StartBreadpublic class StarBread { public void water() { System.out.println("准备水"); } public void flour() {

2020-08-04 21:41:20 73

原创 设计模式--------外观模式

设计模式--------外观模式介绍外观模式的四大问题现在的写法有什么问题吗?为什么要用外观模式?什么是外观模式?外观模式有什么好处?使用一个例子进行问题的说明假如要制作一个智能系统,要能用语音控制灯光的亮度,音乐的选择,音量的大小,电视的开关等, 现在要进入休闲模式,要打开灯光,打开电视,打开音乐Lightpublic class Light { public void on() { System.out.println("light

2020-08-03 21:46:01 121

原创 设计模式--------适配器模式

设计模式--------适配器模式采用三个问题说明适配器模式现在的写法有什么问题?什么是适配器模式适配器模式有什么好处使用一个问题来说明问题有一个公司训练蜂鸟,让蜂鸟听命令飞和走路,现在他们引进了新品种,非洲鸵鸟,他们属于不同的种类,蜂鸟属于鸟,非洲鸵鸟属于鸵鸟,现在要使用训练蜂鸟的方式训练鸵鸟,让他们也能走路和飞目前思路蜂鸟属于鸟的接口非洲鸵鸟属于鸵鸟的接口他们是二个完全不同的类,无法差生关联,所以没有办法什么是适配器模式什么是适配器: 适配器类似于插

2020-08-03 09:36:34 177

原创 设计模式--------命令模式

设计模式--------命令模式介绍命令模式的四大问题现在的写法有什么问题吗?为什么要用命令模式?什么是命令模式?命令模式有什么好处?使用一个例子进行问题的说明例如有一个开关遥控器,控制多个电器的开关,每个电器旁有二个按钮,分别控制开和关Lightpublic class Light { public void on() { System.out.println("light on"); } public void o

2020-08-02 10:25:12 100

原创 设计模式--------装饰者模式

介绍装饰者的四大问题现在的写法有什么问题吗?为什么要用装饰者模式?什么是装饰者模式?装饰者模式有什么好处?采用一个案例来说明问题现在要设计一个买奶茶系统,奶茶可分为绿茶,红茶,可以加入配料椰果,红豆等,设计这样一个系统。目前设计思路方式一寻找奶茶的共通之处,创建一个抽象茶类cost() :计算金额getDescription() : 获取奶茶名称description: 奶茶名称属性然后针对不同的搭配创建各自的奶茶类绿茶红茶椰果绿茶椰果红茶.

2020-07-29 10:45:04 90

原创 设计模式--------观察者模式

介绍观察者模式的四大问题现在的写法有什么问题吗?为什么要用观察者模式?什么是观察者模式?观察者模式有什么好处?采用一个案例来说明问题假如现有一个检测系统,其可以检测温度,湿度等,每当检测系统更改的时候,就需要发送更改的消息到温度显示器和湿度显示器上,以便实时观测变化现在的写法有什么问题吗?目前实现思路...

2020-07-28 22:01:36 124

原创 Shell练习题——判断文件是否是大于100行

题目:判断文件是否大于100行,如果大于,则显示 /etc/inittab is a big file.否则显示 /etc/inittab is a small file.个人思路使用命令wc -l ,但是输出会有个文件名使用重定向< 将文件内容输入到wc中就不会有文件名了然后比较数值,输出#!/usr/bin/env bashlen=`wc -l < $1`if [ len -gt 100 ]then echo "$1 too long!"else ech.

2020-07-24 10:56:56 2404

原创 设计模式--------单例模式

设计模式——单例模式什么是单例模式单例模式的特点该对象只有一个实例无需实例化单例模式使用场景需要频繁实例化创建对象时耗时过多或者耗资源过多,但又经常用到的对象同一个数据源连接对象需要被公用的场合适合使用日志文件,应用配置线程池怎么样的加载方式才是对系统最优的呢?使用的时候再加载,减轻系统启动的负担只创建一个实例,减少内存损耗创建过程快速保证线程安全1.懒汉模式——线程不安全什么是懒汉模式——线程不安全懒汉模式字如其名:此设计方式主要是为

2020-07-14 16:35:26 87

原创 MongoDB 基础教程

MongoDB1. 认识MongoDB1.1 启动MongoDB$ mongod --dbpath /data/mongodb --port 270171.2 启动MongoDB命令行# 启动MongoDB$ mongod --dbpath /data/mongodb# 打开另一个命令行窗口(上一个不关闭)$ mongo1.3 MongoDB数据结构1.4 基本指令MongoDB 无需创建数据库,集合,只有在创建文档的时候会自动创建# 显示所有数据库$show dbs#

2020-06-25 22:33:31 315

原创 GIt

Git1.1 创建新的本地仓库创建一个新的本地仓库# 初始化仓库$git init# 添加文件到仓库$git add README.md# $git commit -m "first commit"如何撤销 add 的文件# 更改文件的内容$echo "111" >> ReadMe.md# 查看文件的状态,如果文件更改但未add到暂存库则是红色# 如果文件更改并已add但是为commit则是绿色$git status# 添加文件到暂存库中$git add

2020-06-17 16:30:42 123

原创 Java日志配置

java.util.logging.logger配置文件详解较为常用的配置项设置# handlers 配置要输出的位置# java.util.logging.ConsoleHandler = 控制台# java.util.logging.FileHandler = 文件handlers= java.util.logging.ConsoleHandler,java.util.logging.FileHandler# 全局配置,其凌驾于所有的等级配置之上.level= WARNING

2020-06-12 09:55:50 1052

原创 Maven Web项目简单构建

Maven项目建立记录1.Eclipse 配置Maven1.1 配置自己安装的Maven进入Maven栏,选择Installations,点击Add选择自己的Mavan安装目录(图中是已经选好了的)1.2 设置配置文件的位置配置文件中包含仓库等位置信息,通过设置配置文件的位置以获得仓库信息等配置文件的优先级本地配置路径: 一般在你电脑登录用户的用户文件下 ${user.dir} /.m2/settings.xml ,其优先级大于Maven安装路径下的setting.xml全局配置

2020-05-31 11:24:39 119

原创 IOS Notes

IOS Notes第一章. 第一个Swift程序

2020-05-13 11:54:18 332

原创 Linux(CentOS)学习笔记

Linux (CentOS 7)笔记1. CentOS 7的安装1.1 MAC使用 Parallels Desktop 运行 CentOS 7我的电脑是mac系统的, 所以我使用的是Parallels Desktop虚拟机来安装CentOS.选择免费系统中的最后一个CentOS Linux 下载即可.下载完成之后首先会叫你输入一个新的密码. 最后进入如下界面, 其会安装一个Parall...

2020-03-25 22:43:31 764

原创 12. 虚拟环境和包

12. 虚拟环境和包12.1 概述当我们需要不同版本的python工作时, 我们需要创建一个虚拟环境以便所有的程序都能在各自的环境里运行.12.2 创建虚拟环境用于创建和管理虚拟环境的模块称为venv.commend:#创建虚拟环境的文件夹python3 -m venv 文件夹名#启动虚拟环境#source 文件名/bin/activate#退出虚拟环境#deactiva...

2020-02-14 10:57:11 93

原创 11.标准库简介 -- 第二部分

11.标准库简介 – 第二部分11.1 格式化输出reprlib 模块提供了一个可定制的repr()函数.Test.py:import reprlibprint(reprlib.repr("abc"))运行结果:'abc'pprint 模块可以提供更为详细的输出控制. 其会自动的换行和缩进.Test.py:import pprintt = [[1,2,3,[1,3,4...

2020-02-14 10:56:45 148

原创 10. 标准库简介

10. 标准库简介10.1 操作系统接口os 模块是关于与操作系统交互的模块:Test.py:import os#获取当前工作目录print(os.getcwd())#改变当前工作目录os.chdir("/Users")print(os.getcwd())#使用命令行执行命令os.system("echo 1233")运行结果:/Users/chenxiaowei...

2020-02-14 10:56:09 450

原创 9. 类

9. 类类提供了一种组合数据和功能的方法, 创建一个新类意味着创建一个新类型.python支持多继承, 派生类可以覆盖基类的方法, 可以调用基类的方法.9.1 名称和对象python的对象, 多个名称可以绑定到同一个对象, 即使它们不在同一个作用域. 在处理不可变类型时, 它们没有影响, 但是在处理可变类型时, 它改变将会导致都改变.Test.py:def Test(MyList): ...

2020-02-14 10:55:16 119

原创 8. 错误和异常

8. 错误和异常8.1 语法错误语法错误也就是解析错误.Test.py:while True print("ss")运行结果: File "main.py", line 1 while True ^SyntaxError: invalid syntax***Repl Closed***8.2 异常当语法没有错误后还会引发其他的错...

2020-02-14 10:54:36 348

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除