自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Virgil_K2017的博客

不做商业用途,仅用于学习、总结、笔记,

  • 博客(78)
  • 收藏
  • 关注

原创 SpringBoot项目启动加载时排除某一个类

排除某一个类

2023-04-24 16:02:45 1691

原创 经典排序算法

排序算法

2023-02-21 10:00:25 131

原创 Spring 中最常用的 11 个扩展点

Spring 扩展

2022-12-12 15:57:46 185

原创 Sharding-Proxy查询分库分表数据,很方便!!

sharding-proxy

2022-12-09 16:03:05 1220

原创 Guava中的Map骚操作,代码量节省一半

第三方工具包使用

2022-11-21 11:44:12 172

原创 发现Kafka bug

kafka空针织

2022-10-20 19:58:57 778

原创 @Async注解使用不当引发的spring循环依赖

循环依赖

2022-09-14 10:55:37 123

原创 Mybatis插入使用@Param注解,获取不到自增id

Mybatis插入获取不到自增id、@Param

2022-08-25 09:52:10 309

原创 Kafka处理数据超时导致Offset回滚,重复消费

Kafka consumer重复消费

2022-08-23 13:39:19 1331

原创 OAuth2.0接百度平台进行授权

OAuth2.0、百度

2022-07-12 13:39:24 1806 3

原创 面试突击系列

死锁排查实践https://juejin.cn/post/7098185678529232909

2022-05-17 15:33:08 96

原创 实现ResponseBodyAdvice接口,Controller层返回报转换异常

controller中返回字符串第一次进入这个类AbstractMessageConverterMethodProcessor的writeWithMessageConverters中由于返回类型是String,所以先匹配了这个StringHttpMessageConverter转换然后又通过beforeBodyWrite去写的,写成了TraceResult类当前类实例是StringHttpMessageConverter,其中方法中第二个参数是String,就会报转换异常了解决方法

2021-12-15 20:07:33 566

原创 ZipInputStream解压远程文件报错,java.lang.IllegalArgumentException: MALFORMED[1]

java.lang.IllegalArgumentException: MALFORMED[1]

2021-12-03 10:54:17 1737 2

原创 Java线程池实现原理及实践原理

https://juejin.im/post/5e86e13ee51d4546e07b5f29

2020-04-03 16:00:32 207

原创 分布式锁

一、引题1、什么是分布式锁?分布式CAP理论提到任何一个系统都无法同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partitiontolerance)三者的,同一时刻只能满足两个,在这种情况下分布式锁就出现了,分布式锁就是用来解决数据一致性问题的。保证一个方法或属性在高并发情况下的同一时间只能被同一个线程执行,在单体应用中,控制并发处理的接口...

2020-04-03 14:59:23 300

原创 从ReentrantLock的实现看AQS的原理及应用

美团技术团队https://mp.weixin.qq.com/s/sA01gxC4EbgypCsQt5pVog

2020-04-03 14:58:25 205

原创 云服务环境配置

jdk安装https://www.cnblogs.com/AlanLee/p/8589547.htmlnginx安装https://www.cnblogs.com/AlanLee/p/9044644.htmlhttps://blog.csdn.net/CoderYin/article/details/88743390

2020-03-15 11:48:50 312

原创 微服务介绍

https://juejin.im/post/5ab0d1a3f265da23731448e0

2019-12-31 14:02:29 221

原创 JVM虚拟机——GC参数解析 UseSerialGC、UseParNewGC、UseParallelGC、UseConcMarkSweepGC

https://www.cnblogs.com/redcreen/archive/2011/05/04/2037057.htmlhttps://blog.csdn.net/leo187/article/details/88920036

2019-09-03 17:22:56 3592

原创 Java对象的四种引用类型

对象的强、软、弱和虚引用在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地控制对象的生命周期。这4种级别由高到低依次为:强引用、软引用、弱引用和虚引用。⑴强引用(StrongReference)强引用是使用最普...

2019-08-28 12:24:53 301

原创 Java内存分配中,堆和栈的区别

参考:https://www.jianshu.com/p/65b9f5f79716根据编译原理,程序在运行时的内存分配策略有三种:静态 Static指在编译时就能确定的每个数据目标在运行时刻需要的存储空间需求。因而在编译的时候就可以给他们分配固定的存储空间。 这种数据目标在编译时就为他们分配固定的内存。限制:代码中不能有可变数据结构,如数组。代码中不允许有递归或嵌套结构的出现。pub...

2019-08-28 11:38:53 369

原创 Java面试之Synchronized解析

参考:https://juejin.im/post/5d5374076fb9a06ac76da894#heading-8synchronized,是解决并发情况下数据同步访问问题的一把利刃,也是面试经常闻到的一个知识点。那么synchronized的底层原理是什么呢?Synchronized的使用场景synchronized关键字可以作用于方法或者代码块,最主要有以下几种使用方式,如图:...

2019-08-19 17:01:28 2154 5

原创 Java线程池解析

参考:https://juejin.im/post/5d1882b1f265da1ba84aa676#heading-8经典面试题面试问题1:Java的线程池说一下,各个参数的作用,如何进行的?面试问题2:按线程池内部机制,当提交新任务时,有哪些异常要考虑。面试问题3:线程池都有哪几种工作队列?面试问题4:使用无界队列的线程池会导致内存飙升吗?面试问题5:说说几种常见的线程池及使用场景...

2019-08-10 15:35:37 891

原创 TCP三次握手四次挥手(通俗易懂版)

TCP连接的建立(三次握手)最开始的时候客户端和服务器都是处于CLOSED状态。主动打开连接的为客户端,被动打开连接的是服务器。三次握手通俗理解:TCP客户端是男孩子,TCP服务器是女孩子,男孩子要追女孩子,首先要建立恋爱关系。需要一个建立恋爱关系的过程。男孩:我们可以恋爱吗?(客户端请求服务器建立连接)女孩:你想追我?想清楚了!(服务器要求客户端确认连接)男孩:没错,你就是我的梦...

2019-08-08 11:54:36 2009

原创 JVM内存结构的面试题

参考:https://juejin.im/post/5d4789afe51d453b386a62ac问题:1、JVM管理的内存结构是怎样的?2、不同的虚拟机在实现运行时内存的时候有什么区别?3、运行时数据区中哪些区域是线程共享的?哪些是独享的?4、除了JVM运行时内存以外,还有什么区域可以用吗?5、堆和栈的区别是什么?6、Java中的数组是存储在堆上还是栈上的?7、Java中的对象...

2019-08-08 11:15:26 419

原创 mysql数据恢复,binlog详解

binlog日志恢复数据,是挽救错误操作和数据损坏一根救命稻草,所以认识和使用binglog对于技术人员还是很有必要的。binlog一般用于主从复制 中 master节点开启binlog把二进制日志传递给slave节点达到主从数据一致第二点自然是用于数据恢复了,使用mysqlbinlog工具来恢复数据查看my.cnf配置找到binlog以及mysql数据存储的位置## The My...

2019-08-07 14:37:12 332

原创 MySQL 快速创建千万级测试数据

参考:https://juejin.im/post/5ce372c36fb9a07ef63fb191背景在进行查询操作的性能测试或者sql优化时,我们经常需要在线下环境构建大量的基础数据供我们测试,模拟线上的真实环境。创建测试数据的方式编写代码,通过代码批量插库(步骤太繁琐,性能不高,不推荐)编写存储过程和函数执行(本文实现方式1)临时数据表方式执行 (本文实现方式2,强烈推荐该方式...

2019-08-06 18:08:29 466

原创 Spring Boot 2.x 跨域问题(多种解决方式)

参考:https://juejin.im/post/5d438becf265da03de3ae29f什么是跨域首先,我们需要了解一下一个URL是怎么组成的:// 协议 + 域名(子域名 + 主域名) + 端口号 + 资源地址http: + // + www.baidu.com + :8080/只要协议,子域名,主域名,端口号这四项组成部分中有一项不同,就可以认为是不同的域,不同的域之间...

2019-08-02 15:45:11 2905 1

原创 MySQL的优化,看这篇文章就够了

一、EXPLAIN做MySQL优化,我们要善用 EXPLAIN 查看SQL执行计划。下面来个简单的示例,标注(1,2,3,4,5)我们要重点关注的数据type列,连接类型。一个好的sql语句至少要达到range级别。杜绝出现all级别key列,使用到的索引名。如果没有选择索引,值是NULL。可以采取强制索引方式key_len列,索引长度rows列,扫描行数。该值是个预估值extr...

2019-08-02 10:25:16 138

原创 内存溢出时怎么排查?

https://www.cnblogs.com/intsmaze/p/9550256.html

2019-07-30 17:41:27 1381

原创 Java 对象克隆(浅克隆和深克隆)

https://blog.csdn.net/w410589502/article/details/54985987

2019-06-21 11:58:39 205

原创 Http auth认证的两种方式Basic方式和 Digest认证

一、Http Base Auth 方式当访问一个Http Basic Auth 网站的时候需要提供用户名,密码,否则会返回401 (without authoration)。Http Basic Authentication认证 有2种方式:1、请求头部Authorization 中添加 用户名/密码 的base64 编码字符串。2、url中拼用户名和密码。市面上大部分浏览器支持url...

2019-06-17 10:16:02 15924

原创 Spring中ApplicationContext和Beanfactory的区别

参考:https://blog.csdn.net/hi_kevin/article/details/7325554BeanFacotry是spring中比较原始的Factory。如XMLBeanFactory就是一种典型的BeanFactory。原始的BeanFactory无法支持spring的许多插件,如AOP功能、Web应用等。ApplicationContext接口,它由BeanFact...

2019-06-11 17:15:21 609

原创 idea中maven项目 jar包下载不完整解决办法

有时从git上clone项目,maven工程,有时候pom.xml在project标签处报错:Failed to read artifact descriptor for xxx:jar这种有时候时jar包下载不完全,去maven仓库看相关jar包会是*.lastUpdated这种格式,这是jar下载不完全。解决办法:在这个Command line里输入mvn -U idea:idea...

2019-06-10 10:48:59 8514

原创 spring boot自定义starter

自动化配置需满足两个条件:能够生成 Bean,并注册到 Bean 容器中;能够自动配置项目所需要的配置。1、首先创建一个spring boot 项目,删除不需要的依赖、test包,另外启动类不需要,否则会导致@ConfigurationProperties冲突,只留一个依赖即可<dependency> <groupId>org.springframework...

2019-06-06 13:41:01 163

原创 彻底理解scheduleAtFixedRate 与 scheduleWithFixedDelay

scheduleAtFixedRate以上一个任务***开始的时间***计时,period时间过去后,检测上一个任务是否执行完毕,如果上一个任务执行完毕,则当前任务立即执行,如果上一个任务没有执行完毕,则需要等上一个任务执行完毕后立即执行。scheduleWithFixedDelay以上一个任务***结束的时间***开始计时,period时间过去后,立即执行。重点:两个方法以不同的时间点...

2019-05-27 11:27:28 871

原创 CountDownLatch、CyclicBarrier和Semaphore比较并举例(通俗易懂)

在java 1.5中,提供了一些非常有用的辅助类来帮助我们进行并发编程,比如CountDownLatch,CyclicBarrier和Semaphore,今天我们就来学习一下这三个辅助类的用法。CountDownLatch用法CyclicBarrier用法Semaphore用法一.CountDownLatchCountDownLatch类位于java.util.concurrent包...

2019-05-24 19:08:03 207

原创 Mysql主从数据库配置与取消

https://www.cnblogs.com/gl-developer/p/6170423.html

2019-05-20 20:59:47 3735 1

原创 Nginx中nginx.conf配置文件详解

user nginx nginx ;Nginx用户及组:用户 组。window下不指定worker_processes 8;工作进程:数目。根据硬件调整,通常等于CPU数量或者2倍于CPU。error_log logs/error.log;error_log logs/error.log notice;error_log logs/error.log info;错误日志:存...

2019-05-20 19:38:03 170

原创 Redis修复aof文件

redis-check-aof --fix appendonly.aof

2019-05-20 17:52:45 1086

linux发行版的数量

linux发行版的数量

2024-03-22

空空如也

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

TA关注的人

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