- 博客(56)
- 收藏
- 关注

原创 深入Web请求的过程
深入We请求的过程1 B/S(Browser/Server)网络架构概述1.1 什么是B/S网络架构B/S网络架构是浏览器、服务端和Internet网构成的网络结构1.1 B/S架构的好处客服端使用统一的浏览器(Browser)服务端(Server)基于统一的HTTP。和传统的C/S架构使用自定义的应用层协议不同,B/S架构使用的都是统一的HTTP。HTTP协议采用无状态的短连...
2018-10-15 20:59:28
14670
2
原创 spring中bean的初始化调用或者销毁时调用
这里写自定义目录标题1 @bean指定方式2 实现InitializngBean或者DisposableBean3 JSR250规范中的@PostConstruct或者PreDestory4 后置处理器BeanPostProcessor1 @bean指定方式@bean部分源码如下 // bean 初始化调用 String initMethod() default ""; // bean 消费时调用 String destroyMethod() default AbstractBeanDef
2020-08-02 20:25:39
732
原创 Futrue cancel() mayInterruptIfRunning 的含义
源码注释 * @param mayInterruptIfRunning {@code true} if the thread executing this * task should be interrupted; otherwise, in-progress tasks are allowed * to complete翻译成如下:mayInterruptIfRunning为true...
2020-02-21 23:00:25
2037
9
原创 break语法糖跳出多重循环
// 自定义标记 retry: for (int i = 0; i < 10; i++){ for(int j = 0 ; j < 10; j++ ){ System.out.println(i+"->"+j); if(j > 5){ ...
2019-12-29 16:08:34
543
原创 spring cloud Eureka
这里写自定义目录标题1 服务搭建1.1 搭建服务治理中心1.2 搭建生产者(下游服务)1.3 搭建消费者(上游服务)1.4 服务搭建过程中遇到的问题1 服务搭建springboot版本2.0.2.RELEASEspringcloud版本Finchley.SR1springcloud依赖版本管理,引入这个后当前pom或者子pom都不需要再显示的使用版本号。 <dependency...
2019-12-14 16:55:13
315
原创 please make sure bucket name must contain legal appid when appid is missing. example: music-1251122
腾讯对象存储
2019-09-23 10:57:33
2902
6
原创 springboot读取配置文件的值
第一步,写配置文件第二步,定义获取配置文件属性值的bean@Component@ConfigurationProperties(prefix = "forest")//属性名字的前缀public class SpringBootProperties { private String name; private Integer age; public Stri...
2019-09-21 16:58:48
571
原创 docker 安装redis
从官网 拉取镜像docker pull redis:3.2创建容器docker run -p 6379:6379 -v $PWD/redis/data:/data -d redis:3.2 redis-server --requirepass "123456" --appendonly yes// -p 6379:6379 容器与主机的端口映射// -v $PWD/red...
2019-09-19 11:13:06
133
原创 Error: Cannot perform an interactive login from a non TTY device
winpty docker login
2019-09-14 20:42:54
4832
原创 jenkins+tomcat+maven+github
安装以及使用参考文章遇到的问题问题1将jdk8文件授权给jenkins用户chown -R jenkins:jenkins /usr/local/jdk8问题二使用绝对路径(我的mvn的安装目录是/usr/local/maven3.6)mvn 替换成下面/usr/local/maven3.6/bin/mvn...
2019-09-09 21:52:51
327
原创 windows解决端口占用
netstat -ano | findstr 8080找到端口对应的pidtaskkill /pid 20908 /f终止进程
2019-08-28 15:12:30
240
原创 tcp连接过程
1 连接过程第一步:服务器端创建传输控制块(TCB),准备接受客服端的连接请求第二步:服务器端进入**listen(收听)**状态,等待客服端的连接请求第三步:客服端创建传输控制块(TCB)第四步:客服端发送请求连接的数据包(数据包SYN控制位位1,seq为x,x为选择的初始序列号。SYN=1的数据包不携带任何数据,但是需要消耗一个序列号),客服端进入**syn-sent(同步已发送)...
2019-08-14 17:24:58
1244
原创 六种创建二维数组的方式
float f1[][] = new float[4][4];float f2[][] = new float[4][];float []f3[] = new float[4][4];float []f4[] = new float[4][];float [][]f5 = new float[4][4];float [][]f6 = new float[4][];口诀:左(等号左...
2019-08-10 15:49:02
4025
原创 常用的算法技术
标题1 蛮力法2 减治法3 分治法4 动态规划5 贪婪法6 回溯法7 分子界限法1 蛮力法定义:是一种简单直接解决问题的方法。例子:选择排序冒泡排序顺序查找蛮力字符串匹配最近对问题凸包问题旅行商问题背包问题分配问题深度优先查找广度优先查找2 减治法定义:将大问题转化成相同问题的小问题求解,大问题再根据小问题的解来求解。该方法有时也称为增量法。两种实现:自顶...
2019-08-09 12:14:14
1444
原创 冒泡排序
/** * @deprecated 冒泡排序 * @param arr 待排序的数组 * @return int[] */ public static int[] execute(int[] arr){ int len; if(arr == null || (len = arr.length) == 0 || ...
2019-08-08 22:29:06
128
原创 堆排序
前言堆是一个完全二叉树,一层结点满了再把结点添加到下一层,每一层结点的添加顺序是从左到右。父结点大于或者等于它的任意一个子结点Heap实现/** * @version 1.0 * @anthor zsl on 2019/8/8 * @since jdk8 */public class Heap<E extends Comparable<E>> { ...
2019-08-08 22:16:42
128
原创 快速排序
public static void execute(int[] arr,int left,int right){ // 当left大于或者等于right的时候退出递归 if(left < right){ int point = getPoint(arr,left,right); execute(arr,le...
2019-08-08 20:29:21
211
原创 归并排序
public static void execute(int[] arr){ // 当数组的长度小于等于1时就停止拆分 if(arr.length > 1){ /*左递归*/ int len = arr.length; int leftLen = len/2; ...
2019-08-08 16:47:44
104
原创 插入排序
public static int[] execute(int[] arr){ if(arr == null || arr.length == 0 || arr.length == 1){ return arr; } int len = arr.length; // 执行n-1趟 for(...
2019-08-08 11:14:06
117
原创 选择排序
public static int[] execute(int[] arr){ int len = arr.length; // 需要执行n-1趟 for(int i = 0; i < len-1;i++){ // 假定i是此趟最小元素下标 int minIndex = i; ...
2019-08-08 10:24:44
125
原创 Spring Security OAuth源码分析
目录流程图流程图说明TokenEndpointTokenGranter(CompositeTokenGranter)AuthorizationServerTokenServices(DefaultTokenServices)流程图流程图说明TokenEndpoint处理/oauth/token请求,调用ClientDetailsService根据client-id去读取相应的配置信息(我...
2019-08-07 16:21:26
145
原创 redis的持久化
目录1 持久化方式1.1 RDB1.2 AOF1.3 RDB与AOF并用2 RDB的优点3 RDB的缺点4 AOF的优点5 AOF的缺点6 如何选择RDB和AOF1 持久化方式1.1 RDB在指定时间间隔内生成数据集的时间点快照并以覆盖的方式写进dump.rdb文件1.2 AOF记录每一条指令,新指令以追加的方式写入文件。重启服务器时重新执行指令恢复数据集。Redis 还可以在后台对 A...
2019-08-04 23:25:16
103
原创 InnoDB、Myisam存储引擎中的5大索引
目录1 主键索引1.1 使用语法1.2 特点2 唯一索引2.1 使用的语法2.2 特点3 普通索引3.1 使用的语法3.2 特点4 全文索引4.1 创建与删除4.2 特点5 复合索引51 创建与删除5.2 特点1 主键索引1.1 使用语法// 创建create primary key index_name ON table_name(列名)// 删除drop index inde...
2019-08-01 17:45:45
665
原创 springsecurity表单登录源码解析
目录1 springsecurity原理图2 认证流程3 源码跟踪1 springsecurity原理图security的实现原理就是通过一层一层过滤器来实现。表单登录,账号密码的认证是在UsernamePasswordAuthenticationFilter这个过滤器中完成的。2 认证流程3 源码跟踪进入到UsernamePasswordAuthticationFilter,中...
2019-07-27 22:04:08
261
原创 各种排序的时间复杂度、空间复杂度、稳定性
文章目录1 冒泡排序2 选择排序3 插入排序4 归并排序5 快速排序6 堆排序7 桶排序8 基数排序9 外部排序1 冒泡排序时间复杂度:O(n*n)稳定性:稳定空间复杂度:O(1)2 选择排序时间复杂度:O(n*n)稳定性:不稳定空间复杂度:O(1)3 插入排序时间复杂度:O(n*n)稳定性:稳定空间复杂度:O(1)4 归并排序时间复杂度:O(nlogn)稳定性:稳定...
2019-07-21 23:15:52
3465
原创 java并发相关的知识
1. 线程创建的8种方式2. 5种线程状态的转化关系3. validate详解4. validate的使用限制5. synchronized详解
2019-07-21 00:03:45
161
原创 springboot引入第三方过滤器
@Configurationpublic class WebConfig extends WebMvcConfigurerAdapter { @Bean public FilterRegistrationBean timeFilter() { // 过滤器注册器 FilterRegistrationBean registrationBean = new FilterRegistra...
2019-07-16 21:25:13
2882
原创 RESTful API拦截的三种方式
目录1 过滤器1.1 使用1.2 特点2 拦截器2.1 使用2.2 特点3 切片3.1 使用3.2 特点4 三种方式起作用的顺序1 过滤器1.1 使用定义bean@Componentpublic class TimeFilter implements Filter { //过滤器销毁的方法 @Override public void destroy() { Syste...
2019-07-16 21:20:05
2195
原创 Object...的使用方法
文章目录1 传入数组1.1代码1.2 输出结果2 传入不定参数2.1 代码2.2 输出结果1 传入数组1.1代码 public static void main(String[] args) { test(new Object[]{"111","222","333"}); } public static void test(Objec...
2019-07-10 17:31:45
1854
原创 springboot注解
文章目录@Autowired@Resource@Autowired和@Resource的区别@Autowiredspring扫描被@Autowired修饰的类或者接口,然后根据类型在ioc容器中找到匹配的实例进行注入 @Autowired UserServiceImpl userService;这个注解也可以根据名称来注入@Autowired() @Qualifier("...
2019-07-06 00:54:13
310
原创 int与byte之间的相互转化
目录1 主函数2 int转化成byte3 byte转化成int4 测试结果5 过程分析1 主函数 public static void main(String[] args) { int number = 10; System.out.println(toInt(toBytes(number))); }2 int转化成byte public sta...
2019-07-05 18:45:21
48449
3
原创 rsync搭建linux服务器端+windows客服端
目录1 搭建rsync服务端(linux)1.1 安装rsync1.2 编辑rsyncd.conf1.3 编辑rsyncd.secrets2 搭建rsync客服端(windows)2.1 安装 cwRsync_4.0.52.2 编写批处理1 搭建rsync服务端(linux)1.1 安装rsyncyum -y install rsync1.2 编辑rsyncd.confvi /etc/...
2019-07-04 11:14:39
546
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人