图片加载失败 单元测试 @Mock @Mock 注解注入的对象可以正常调用它的方法,但它的方法默认不会执行真实逻辑,而是返回“空值”或“默认值”(如 null、0、false 等)。如果需要方法返回特定值或执行自定义逻辑,必须通过 Mockito 的桩方法(Stubbing) 显式定义行为。 @Spy 部分 Mock,未定 2025-11-29 0 0
图片加载失败 JVM内存模型和GC JVM内存模型 堆 线程共享,存放对象实例,GC的主要区域 方法区 线程共享,用来存储已被虚拟机加载的类信息、常量、静态变量、JIT编译后的代码等数据 程序计数器 线程私有,当前线程的行号计数器 虚拟机栈 线程私有,每个方法被执行的时候都会创建一个栈帧用于存储局部变量表、操作栈、动态链接(对象的内存 2025-11-03 2 0
图片加载失败 数据库死锁问题 数据库死锁是数据库系统中一个常见的问题,它发生在两个或多个事务彼此等待对方释放锁,从而导致所有事务都无法继续执行的情况。 数据库通常会自动检测死锁并强制回滚其中一个事务,以让其他事务继续进行,但频繁发生死锁会严重影响系统性能和用户体验。因此排查死锁问题至关重要。 排查死锁四部曲 1. 确认死锁存在并 2025-09-26 2 0
图片加载失败 查看磁盘IO情况常用命令 iotop iotop –aoP –d 4 命令参数: -o:只显示有io操作的进程; -b:批量显示,无交互,主要用作记录到文件; -n NUM:显示NUM次,主要用于非交互式模式; -d SEC:间隔SEC秒显示一次; -p PID:监控的进程pid; -u USER:监控的进程用户; iot 2025-09-11 0 0
图片加载失败 Linux硬盘性能测试工具-FIO 1.硬盘I/O测试类型 在日常测试中,硬盘I/O测试类型主要有以下几种类型 随机读、随机写、随机读写 顺序读、顺序写、顺序读写 2.FIO介绍 FIL是Linux中开源的一款IOPS测试工具,主要用来对硬盘进行压力测试和性能验证。使用FIO可以产生多线程或进程来执行特定类型的I/O操 2025-09-11 0 0
图片加载失败 SpringBoot中@AutoConfigurationPackage和@ComponentScan的区别 @ComponentScan 指定组件扫描的根路径,如果未指定具体路径,则默认为配置类所在包路径,主要是扫描 Spring 家族的各种 Bean,如 @Controller、@Service、@Component、@Repository 以及由此衍生出来的一些其他的 Bean @AutoConfig 2025-09-04 3 0 spring
图片加载失败 SpringBoot启动过程 SpringApplication.run 在应用启动类中调用SpringApplication.run方法,最终会new一个SpringApplication实例,再调用实例的run方法 public static ConfigurableApplicationContext run(Class< 2025-09-01 5 0 spring
图片加载失败 为什么SpringBoot的jar可以直接运行 SpringBoot提供了一个插件spring-boot-maven-plugin用于把程序打包成一个可执行jar包。 SpringBoot应用打包以后,生成一个FatJar,里面包含了应用依赖的jar包和SpringBoot loader相关的类。 java -jar会去找jar包中的manife 2025-08-30 4 0 spring
图片加载失败 常用工具网站 鱼骨图 https://www.processon.com/ 正则在线测试 https://www.sojson.com/regex/check.html 图标网站 2025-08-29 0 0
图片加载失败 Arthas Arthas 是阿里开源的Java诊断工具,能在不重启应用的情况下实现线上问题排查、性能监控和动态代码热更新。本文将详细介绍其核心功能与使用技巧。 快速安装与启动 # 下载最新版Arthas curl -O https://arthas.aliyun.com/arthas-boot.jar # 启 2025-08-29 0 0
图片加载失败 JAVA日志体系 日志框架发展史 早期阶段 Java 1.0 时代,开发者使用 System.out.println 打印日志。 缺点: 无法控制日志级别(如 DEBUG、INFO)。 性能差(同步 IO)。 无法灵活输出到文件或网络。 Log4j 时代 2025-08-26 3 0 笔记
图片加载失败 SpringBoot自动配置原理 什么是SpringBoot自动配置 SpringBoot 定义了一套接口规范,这套规范规定:SpringBoot 在启动时会扫描外部引用 jar 包中的META-INF/spring.factories文件,将文件中配置的类信息加载到 Spring 容器,并执行类中定义的各种操作。对于外部 jar 2025-07-28 9 0 spring
图片加载失败 微信打开网页显示"无法确认该网页的安全性,请谨慎访问。" 公众号自定义菜单绑定的页面通过菜单访问没问题,直接访问会提示"无法确认该网页的安全性,请谨慎访问。",体验很差。 猜测可能是因为之前用的是http,导致域名被加入了黑名单之类的。后来整改成了https,但是点击申请恢复了好几次都没用,也没有任何结果通知。这点真的要吐槽一下。 后来在网上了解到可以通过 2025-07-11 2 0 笔记
图片加载失败 idea插件开发 手把手教你5分钟从零开发一款简易的IDEA插件 你们要的Intellij IDEA 插件开发秘籍,来了! 除了action以外的其它插件 准备工作 启用插件Plugin DevKit 2025-06-29 19 0 笔记
图片加载失败 lambda lambda表达式 算子 sorted 多条件依次排序 list=list.stream() //第一个排序条件 //假设自定义对象为Obj,则可直接写为Obj::getName,sorted默认升序 2025-06-05 13 0 笔记
图片加载失败 没用的知识增加了 分支预测 分支预测是现代CPU用来解决控制冒险(Control Hazard)的关键技术,它通过预测程序分支的执行路径来保持指令流水线的高效运转。 在程序中可以使用if-else优化switch,如果程序运行时某个分支概率较高,可以先让概率高的分支走if,其他的条件在else里走switch 集合重 2025-05-22 5 0 笔记
图片加载失败 Spring容器启动过程 整体流程 1. new一个ApplicationContext实现类(Spring容器/IOC容器/Spring上下文),比如AnnotationConfigApplicationContext(通过配置类启动)、ClassPathXmlApplicationContext(通过xml配置文件启动) 2025-05-17 21 0 spring
图片加载失败 mysql相关 事务隔离级别 1. 读未提交:a事务可以读取到b事务尚未提交的数据,存在脏读,不可重复读和幻读 2. 读已提交:a事务只能读取b事务已提交的数据,存在不可重复读和幻读 3. 可重复读:同一事务中多次读取的数据相同,InnoDB默认的隔离级别,通过mvcc(多版本并发控制)实现,InnoDB通过间隙锁 2025-04-03 9 0 笔记
图片加载失败 java线程相关 线程的状态 1. new:线程创建后, 执行start方法前,处于new状态 2. runnable:执行start方法后,线程正在jvm中执行或者准备执行,在等待系统分配cpu资源 3. blocked:线程等待获取监视器锁,比如线程在尝试进入synchronized块或方法时锁被其他线程持有 4 2025-03-07 23 0 笔记