240 发简信
IP属地:广东
  • 240
    Mybatis 源码-日志

    日志模块结构 Log4j2也是类似的结构,jdk14、nologging、stdout和commons则没有委派 JDBC日志模块则使用了代理模式 mybatis 日志模块包...

  • 240
    Mybatis 源码-异常

    Mybatis 源码-异常 异常模块结构 包结构 异常类继承树 IbatisException 类是顶层类,但是已经被加上 @Deprecated ,说明废弃掉了而 Pers...

  • MySQL 锁等待超时(Lock wait timeout exceeded)

    问题:Lock wait timeout exceeded; try restarting transaction MySQL版本:5.6.44 官方文档[https://d...

  • 排序算法——堆排序

    堆的特点 1、 是一棵完全二叉树2、 所有父节点的值大于子结点的值,或者所有父节点的值小于子结点的值 完全二叉树的特点 1、是一棵二叉树2、生成结点顺序:从上到下,从左往右,...

  • 240
    策略模式

    概述 利用多态,使得同一行为(方法)在不同场景下有不同的实现,并且将使用与实现分离。 优点: 能够解决if-else过多问题 开闭原则,有新的策略时,只需要新建具体策略类即可...

  • FGC排查基础知识

    排查思路及常用命令 1、查看java进程 ps -ef | grep java jps 2、检查JVM配置 ps aux | grep "applicationName=ad...

  • RocketMQ 保证消息幂等

    消费重复的场景: 发送时消息重复当一条消息已被成功发送到服务端并完成持久化,此时出现了网络闪断或者客户端宕机,导致服务端对客户端应答失败。 如果此时生产者意识到消息发送失败并...

  • Linux常用命令

    by shihang.mai 1. 前言 本文作为一个自己查命令的记录。我之前并没了解linux命令,但是作为程序员,还是必须会用的。所以入手了一本《Linux命令行大全》,...

  • 240
    面向对象的七大设计原则

    在开发中,为了提高系统的可维护性和可复用性,增加软件的可扩展性和灵活性,要尽量遵循以下7条原则来进行开发。 开闭原则 定义:软件实体应当对扩展开放,对修改关闭。 开闭原则是面...

个人介绍
路漫漫其修远兮,吾将上下而求索