- 博客(20)
- 收藏
- 关注
原创 GitHub页面(实现贪吃蛇效果等)美化主页详细大全!
介绍如何修改个人主页的颜色、布局和字体,以及如何添加自定义元素(如徽章、动态效果等)。
2024-08-02 22:07:34
2297
2
原创 软件测试工程师MySQL核心知识全解(工作实战+面试高频)
测试工程师学习MySQL,核心是以业务验证为导向工作中重点练:条件查询、联表查询、数据增删改、批量造数据和清理数据面试重点背:约束区别、连接区别、WHERE/HAVING区别、索引、事务ACID、隔离级别能力提升:学会用EXPLAIN分析SQL,理解表设计和业务模型,能独立设计数据校验用例掌握以上内容,足以覆盖初中级测试岗90%以上的数据库工作和面试需求。
2026-11-07 11:11:02
107
原创 MySQL数据库基础 第四章:索引与事务
索引本质是空间换时间,提升查询速度,代价是占用磁盘、降低增删改速度主键、唯一键、外键会自动创建索引SHOW INDEX FROM 表CREATE INDEX 索引名 ON 表(字段)DROP INDEX 索引名 ON 表大表创建索引是高危操作,尽量提前规划,低峰期执行用EXPLAIN可以分析SQL是否走索引适合:大数据量、查询频繁、增改少;不适合:小表、增改频繁、区分度低。
2026-11-06 22:07:25
154
原创 MySQL数据库基础 第三章:表的增删改查(进阶)
A实体的一条记录,对应B实体的唯一一条记录;反之B实体的一条记录,也只对应A实体的一条记录,是严格的一一对应关系。A实体的一条记录,对应B实体的多条记录;但B实体的一条记录,只对应A实体的一条记录。是最常用的表关系。A实体的一条记录,对应B实体的多条记录;同时B实体的一条记录,也对应A实体的多条记录。设计思路:必须引入一张中间表(关联表),中间表存储两张主表的主键,两个外键分别关联两张主表。关系类型外键位置是否需要中间表典型场景一对一子表,外键加UNIQUE不需要。
2026-11-04 10:34:31
208
原创 测试工程师必备Linux命令完全指南
测试场景:复现bug时实时观察服务日志、查看接口请求报错、监控服务启动日志。测试高频用法:复现问题前执行。测试场景:部署完服务后确认进程是否启动成功、查看服务的进程PID、排查服务是否意外退出。测试场景:查看日志目录下最新的日志文件、确认部署包是否上传成功、检查配置文件是否存在。测试场景:服务器上找不到日志文件位置、批量查找历史测试报告、定位大文件清理磁盘。测试场景:快速在日志目录、部署目录、配置目录之间切换,排查问题时高频使用。测试场景:操作日志文件前,确认当前路径是否正确,避免删错文件、找错目录。
2026-11-04 10:33:36
195
原创 MySQL数据库基础 第二章:CRUD数据增删改查
- 单行全列插入INSERT INTO 表 VALUES (值1, 值2, ...);-- 多行指定列插入(推荐)INSERT INTO 表(字段1, 字段2...) VALUES(值1, 值2),(值3, 值4),(值5, 值6);
2026-11-03 17:54:52
183
原创 MySQL数据库基础(第一章)
不同字符集、不同编码方案下,一个汉字占用的字节数不同。Windows简体中文版默认字符集为GBK,GBK编码下1个汉字占2个字节UTF-8是当前主流变长编码方案,可表示全世界绝大多数语言文字,UTF-8下1个汉字通常占3个字节-- 查看所有数据库-- 创建数据库CREATE DATABASE IF NOT EXISTS 库名 CHARSET utf8mb4;-- 选中数据库USE 库名;-- 删除数据库DROP DATABASE IF EXISTS 库名;
2026-11-03 17:53:46
64
原创 Python入门第一章:基础语法精学精练(以练代学版)
Python 由荷兰程序员 Guido van Rossum 于1989年圣诞节启动开发,1991年发布首个正式版本。名字并非来自蟒蛇,而是取自喜剧《蒙提·派森的飞行马戏团》,设计初衷是让编程变得简单有趣。变量名 = 值变量名:用于区分不同变量的标识:赋值运算符,表示把右侧的数据放到左侧的变量空间中基础概念:Python解释型特性、动态类型、变量命名规则核心语法:变量定义与使用、四大基础类型、输入输出、f-string格式化运算符重点:地板除的向下取整、浮点数精度问题、逻辑运算符短路、多元赋值。
2026-10-21 16:42:02
201
原创 Java多线程初阶A级教程 | 到面试全解
一个线程就是一个独立的执行流,每个线程按顺序执行自己的代码,多个线程之间「并发」执行多份代码。我们用银行的例子通俗理解: 一家公司去银行办业务,既要转账、又要发福利、还要缴社保。如果只有张三一个会计,就得一件一件办完,耗时很长。如果张三叫来李四、王五帮忙,三个人各负责一件事,分别排队办理,这就是多线程。张三是主线程(Main Thread),负责发起和统筹李四、王五是子线程,各自独立完成任务三个人共享同一家公司的材料和票据(共享进程内存)
2026-10-10 15:28:45
286
原创 Java抽象类与接口详细A级教程
/ 抽象的图形类// 面积属性,子类可以直接用// 抽象方法:绘制图形// 抽象方法:计算面积// 普通方法:获取面积// 矩形类:继承抽象类Shape// 重写抽象方法draw@OverrideSystem.out.println("矩形: 长=" + length + " 宽=" + width);// 重写抽象方法calcArea@Override// 圆形类:继承抽象类Shapethis.r = r;@Override。
2026-10-10 10:57:12
257
原创 Java String类详细级教程 | 从语法用法到原理面试全解
这些正则特殊字符,都要加\\转义如果分隔符是,要写成\\\\(Java转义一次,正则再转义一次)有多个分隔符,可以用连接,比如表示按空格或者&拆分String对象一旦创建,它的内容就不能被修改。所有看似修改字符串的操作,实际上都是创建了一个全新的String对象,原对象的内容丝毫没变。比如replace、substring、拼接等操作,返回的都是新对象,原字符串不变。输入一行字符串,由单词和空格组成,计算最后一个单词的长度。
2026-10-09 23:07:25
391
原创 Java异常机制详细教程 | 从概念语法到实战面试全解
本文系统讲解Java异常机制,涵盖异常本质、体系结构、编译时/运行时异常区别、五大关键字(throw、throws、try、catch、finally)用法及原理,并通过逐行可运行代码演示。内容包括自定义异常、异常处理最佳实践、常见异常速查表与高频面试考点精讲,专为零基础学习者设计,全面覆盖“是什么、为什么、怎么用、踩坑点”,助你从入门到工业级实战无缝衔接。
2026-10-09 21:11:16
315
原创 Java 线程池 ThreadPoolExecutor 笔记
ThreadFactory 是专门用于统一创建线程的接口,线程池所有线程均由该工厂生成,而非直接new Thread()。企业开发核心目的:自定义业务线程名、统一线程属性、统一异常处理。// 自定义线程工厂极简示例// 自定义业务线程名,方便排查// 设置为用户线程return t;// 自定义线程池时传入工厂5,10,10,factory线程工厂是线程池的线程生成器,负责统一创建线程、规范线程名称和属性,解决默认线程无法排查问题的痛点,是企业规范开发的必填参数。
2026-10-06 17:13:17
335
原创 第六章 死锁(并发经典BUG,面试必背)
定义:多个线程同时被阻塞,它们都在等待对方持有的资源被释放,而双方都不释放自己占有的资源,最终所有线程无限期等待,程序无法正常结束。
2026-10-06 17:10:28
184
原创 第三章 synchronized 底层实现原理(JDK1.8,面试必背)
是JVM内置的关键字锁,锁信息存在对象头(Mark Word)中,支持,是Java并发面试的核心高频题。
2026-09-21 19:31:19
274
原创 第四章 JUC 常见并发工具类(java.util.concurrent,面试核心)
Callable带返回值,FutureTask用来接收结果,get()阻塞等待。ReentrantLock是可重入锁,支持超时、公平锁、精准唤醒,需要手动解锁。原子类基于CAS实现,无锁线程安全,适合高并发数值操作。线程池7大参数、4种拒绝策略、执行流程是面试必考题。Semaphore控制最大并发数,CountDownLatch等待多任务全部完成。第四章的内容就全部梳理完了,覆盖了PDF里所有工具类的定义、用法、比喻、场景和面试考点。确认理解后,我们进入第五章线程安全集合类的详细讲解。
2026-09-21 19:30:44
77
原创 第二章 CAS机制(乐观锁的底层实现,面试核心)
全称:Compare And Swap,比较并交换,是一条CPU硬件级别的原子指令。V:内存中变量的当前真实值A:线程期望的旧值(线程之前读到的值)B:想要修改成的新值AtomicInteger内部维护一个volatile修饰的int值。自增时进入Unsafe的自旋循环:先volatile读取主内存最新值,再调用native CAS方法由CPU原子执行比较交换;成功则返回旧值,失败则重新读取最新值再次尝试,直到成功。全程基于硬件原子指令,无重量级锁,属于乐观锁实现。
2026-09-20 19:04:07
247
原创 第一章 常见锁策略(面试高频基础)
锁策略是从不同维度描述锁的特性,不是单一类型的锁,多个维度都支持自适应升级。分类维度synchronized 属性详细说明悲观锁 / 乐观锁自适应初始预测锁冲突概率低,以乐观锁思路运行;检测到冲突频繁后,自动升级为悲观锁。重量级锁 / 轻量级锁自适应初始为轻量级锁(用户态CAS实现);锁冲突加剧后,膨胀为重量级锁(依赖操作系统mutex,内核态实现)。自旋锁 / 挂起等待锁自适应轻量级锁阶段采用自适应自旋策略抢锁;升级为重量级锁后,抢锁失败线程进入挂起等待。读写锁 / 普通互斥锁不是读写锁。
2026-09-20 11:02:53
325
原创 Trae 智能旅行助手:整合多 MCP 服务提升出行规划效率
Trae 智能旅行助手是一款借助 traeIDE 集成高德地图 MCP、12306-MCP、Variflight-MCP 等多个服务的智能应用。它能够为用户提供一站式的出行规划服务,将地图导航、铁路票务查询以及航空航班信息查询等功能有机融合,极大地方便了用户的出行安排。Agent 创作构思在当今快节奏的生活中,人们出行时往往需要在多个平台获取不同类型的出行信息,如在地图软件上规划路线,在 12306 官网查询火车票,在航空 APP 上查询航班。
2025-06-30 20:19:31
927
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅