自恃无情
码龄9年
关注
提问 私信
  • 博客:87,768
    问答:20,670
    108,438
    总访问量
  • 33
    原创
  • 2,055,331
    排名
  • 26
    粉丝
  • 0
    铁粉
IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2016-04-01
博客简介:

自恃无情的博客

查看详细资料
个人成就
  • 获得80次点赞
  • 内容获得17次评论
  • 获得276次收藏
创作历程
  • 1篇
    2023年
  • 2篇
    2022年
  • 1篇
    2021年
  • 10篇
    2020年
  • 8篇
    2019年
  • 12篇
    2018年
成就勋章
TA的专栏
  • RocketMq
    1篇
  • tomcat
    1篇
  • 开发工具
    1篇
  • springboot
  • MyBatis
    5篇
  • dubbo
    2篇
  • java基础
    10篇
  • Spring
    6篇
  • MySQL
    3篇
  • elasticsearch
    2篇
  • jvm
    4篇
  • rabbitMq
    1篇
创作活动更多

如何做好一份技术文档?

无论你是技术大神还是初涉此领域的新手,都欢迎分享你的宝贵经验、独到见解与创新方法,为技术传播之路点亮明灯!

342人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

27个常见的MySQL服务器参数配置

 充分理解 MySQL 配置文件中各个变量的意义对我们有针对性的优化 MySQL 数据库性能有非常大的意义。通常我们需要根据不同的数据量级,不同的生产环境情况对MySQ配置文件进行优化
转载
发布博客 2023.03.12 ·
1119 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

RocketMq消息持久化(一)——存储架构设计概述

RocketMq 索引文件,RocketMq commitLog, RocketMq consumQueue文件。RocketMq 默认存储目录
原创
发布博客 2022.12.04 ·
1556 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

tomcat线程池-深度分析tomcat线程池设计与现实

深入分析tomcat 线程池执行原理以及核心属性
原创
发布博客 2022.11.15 ·
1242 阅读 ·
1 点赞 ·
0 评论 ·
9 收藏

详解synchronized锁升级过程

1.概述Java内置锁的状态总共有4种状态,级别由低到高依次为:无锁、偏向锁、轻量级锁和重量级锁。其实在JDK 1.6之前,Java内置锁还是一个重量级锁,是一个效率比较低下的锁,在JDK 1.6之后,JVM为了提高锁的获取与释放效率,对synchronized的实现进行了优化,引入了偏向锁和轻量级锁,从此以后Java内置锁的状态就有了4种(无锁、偏向锁、轻量级锁和重量级锁),并且4种状态会随着竞争的情况逐渐升级,而且是不可逆的过程,即不可降级,也就是说只能进行锁升级(从低级别到高级别)2.锁升级演变
原创
发布博客 2021.11.07 ·
975 阅读 ·
0 点赞 ·
0 评论 ·
3 收藏

Spring 事件机制总结

1.Spring事件类型    在Spring中,事件是由org.springframework.context.ApplicationEvent实例来表示的,这个抽象类继承扩展了java.util.EventObject,可以使用EventObject中的getSource方法,我们可以很容易地获得所发生的给定事件的对象;在Spring应用中,事件主要分为两大类型,容器生命周期相关和请求过程相关,如下,为ApplicationEvent相关的UML图,通过子类基础
原创
发布博客 2020.08.23 ·
441 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Spring5.1源码编译

1.下载源码下载地址:https://github.com/spring-projects/spring-framework/tree/5.1.x      点击“clone or download” 按钮下载源码    下载完成后解压,如上所示。2.安装gradle并配置阿里云镜像下载gradle:https://downloads.gradle-dn.com/distributions/g
原创
发布博客 2020.08.16 ·
572 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

再见,Navicat!DataGrip 真香

      DataGrip 版是由 JetBrains 公司(就是那个出品 Intellij IDEA 的公司)推出的数据库管理软件。如果你不爱折腾的话,这家公司出品的很多 IDE 都是你的最佳选择,比如你进行 Python 开发的可以选择 JetBrains 全家桶中的 PyCharm 。      DataGrip 支持几乎所有主流的关系数据库产品,如 DB2、Derby、H2、MySQL、Orac.
原创
发布博客 2020.08.02 ·
2555 阅读 ·
1 点赞 ·
1 评论 ·
0 收藏

Elasticsearch kibana IK分词器安装教程

一:安装ES(1)安装JDK环境变量export JAVA_HOME=/usr/local/jdk1.8.0_181export PATH=$JAVA_HOME/bin:$PATHexport CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarsource /etc/profile(2).下载elasticsearch安装...
原创
发布博客 2020.04.05 ·
850 阅读 ·
1 点赞 ·
0 评论 ·
1 收藏

SpringBoot内嵌Tomcat原理剖析

1.嵌入式Tomcat     懂得SpringBoot的童鞋应该很清楚,对于SpringBoot应用来说,不管应用程序是属于何种类型,都是一个Main方法走遍天下,而且对于web应用,只需要引入spring-boot-starter-web中这个依赖,应用程序就好像直接给我们来了个tomcat一样,其实,这里并不是SpringBoot团队里面有什么骚操...
原创
发布博客 2020.03.29 ·
5125 阅读 ·
9 点赞 ·
0 评论 ·
37 收藏

MyBatis核心处理层:MyBatis初始化流程补充(动态sql解析)

1:概述       在写完MyBaits核心处理层时,总感觉对于动态sql语句的解析没有写清楚,所以对于SqlNode,SqlSource这两个类相关的东西再写一篇博客,也算是对MyBatis源码的相关知识点的一次回顾,童鞋在看完这篇的时候,可以再回顾一下MyBatis初始化流程下,可能对sql语句解析的章节理解起来更容易。其实SqlNode和SqlSo...
原创
发布博客 2020.01.19 ·
391 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

MyBatis源码核心处理层:MyBatis初始化流程下

1:概述    接着上篇文章MyBatis初始化流程上,我们继续分析MyBatis的初始化流程,上篇文章讲解到映射文件的解析,本篇我们接着分析MyBatis是如何解析我们自己编写的mapper文件的,整个过程可能比较复杂,涉及到的知识点也比较多,如动态语句的解析,resultMap 节点解析,二级缓存,mapper文件与DAO的绑定,虽然比较复杂,但是耐心...
原创
发布博客 2020.01.16 ·
305 阅读 ·
1 点赞 ·
1 评论 ·
0 收藏

MyBatis源码核心处理层:MyBatis初始化流程上

1 概述       在学习完MyBatis的基础模块之后,我们就正式进入主题,开始分析MyBatis的初始化流程,对于MyBatis的初始化流程,涉及到的知识点比较多,如各种配置的初始化,映射文件的解析,特别是映射文件的解析比较麻烦,所以对于MyBatis的初始化流程,将分为两篇文章进行解析,本篇只分析配置的初始化,对于映射...
原创
发布博客 2020.01.14 ·
275 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏

MyBatis源码四基础层:日志模块

1. 概述:       在 Java 开发中常用的日志框架有 Log4j 、 Log4j2 、 Apache Commons Log 、java.util.logging.slfj等,这些工具对外的接口不尽相同。为了统一这些工具的接口, MyBatis 定义了 一套统一的日志接口供上层使用 ;在MyBatis的日志模块中,用到了常用的设计模式适配器模式,...
原创
发布博客 2020.01.12 ·
341 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

MyBatis源码一基础层:解析器模块

1.概述        解析器模块是 MyBatis 基础支持层的功能, 如图1所示,基础支持层位于MyBatis 整体架构的最底层,支撑着 MyBatis 的核心处理层,是整个框架的基石。基础支持层中封装了多个较为通用的、独立的模块,不仅仅为 MyBatis 提供基础支撑 ,也可以在合适的场景中直接复用 ,如反射模...
原创
发布博客 2020.01.11 ·
333 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

从源码了解dubbo远程服务暴露过程

1简介       本篇文章,我们来研究一下 Dubbo 导出服务的过程,文章主要是从Spring解析dubbo自定义标签为入口,概括性的整理出dubbo是怎么进行服务暴露的,当然,对于inJvm协议的暴露,本篇就不会概述,如果对Spring自定义标签不熟的读者,可参考博主之前写的文章Spring自定义标签,该文章对Sprin...
原创
发布博客 2019.12.01 ·
401 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

AQS(AbstractQueuedSynchronizer)抽象队列同步器

1.AQS概述AQS,AbstractQueuedSynchronizer,即队列同步器。它是构建锁或者其他同步组件的基础框架(如ReentrantLock、ReentrantReadWriteLock、Semaphore等),JUC并发包的作者(Doug Lea)期望它能够成为实现大部分同步需求的基础。它是JUC并发包中的核心基础组件,相比synchronized,synchronized缺少...
原创
发布博客 2019.11.24 ·
334 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

dubbo扩展机制SPI(一)

1.JDK内置SPI机制1.1 概述       SPI 全称为 Service Provider Interface),是JDK内置的一种服务提供发现机制。它通过在ClassPath路径下的META-INF/services文件夹查找文件,自动加载文件里所定义的类。1.2 约定在META-INF/services/目录中创建以...
原创
发布博客 2019.11.17 ·
366 阅读 ·
1 点赞 ·
1 评论 ·
0 收藏

JUC-CopyOnWriteArrayList源码学习

1.概述       JUC包下的并发List只有CopyOnWriteArrayList。该arrayList是线程安全的arrayList,对其修改的操作都是都是在一个副本数组进行的,也即是采用写时复制的策略。如图1为该类的继续关系,在开始阅读CopyOnWriteArrayList的时候,不妨大家可以思考一下,假如自己写...
原创
发布博客 2019.09.01 ·
380 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Spring源码——ApplicationContext相关接口架构分析

        用过Spring的童鞋都知道,BeanFactory 是Spring最重要的最简单的Bean容器,但是由于BeanFactory 过于简单,所以它并不适合实际应用的企业级开发,因此,Spring提供了另外的一套Bean容器管理的体系-ApplicationContext体系。1.Application...
原创
发布博客 2019.08.18 ·
1672 阅读 ·
1 点赞 ·
0 评论 ·
4 收藏

spring源码之-import标签解析

1.Import标签示例       在SpringBoot之前,Spring配置文件的小伙伴都知道,配置文件的维护会让人觉得恐怖,如果配置文件太多,所有配置都放在一个 spring.xml 配置文件中,那么这个文件就会变得很臃肿,所有针对这种情况 ,Spring 提供了一个分模块的思路,利用 import 标签,可以将各个不...
原创
发布博客 2019.07.28 ·
920 阅读 ·
2 点赞 ·
0 评论 ·
0 收藏
加载更多