自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 收藏
  • 关注

原创 JVM八股详解(上部):核心原理与内存管理

JVM是Java生态的核心基石,也是技术面试必考点。本文作为JVM八股系列上部,聚焦基础原理和内存管理机制,从JVM基本概念、组织架构讲起,深入解析内存区域划分、对象生命周期、内存分配策略、内存溢出与泄漏等核心知识点。本文整理了20个高频JVM面试问题,每个问题都提供详细解答和面试常见问题示例,帮助读者构建完整JVM知识体系,为面试做好准备。系列下部将重点讲解垃圾收集器、JVM调优和类加载机制等高级主题,敬请期待。

2026-01-10 18:55:33 880

原创 深入理解JVM:架构、原理与调优实战

JVM(Java虚拟机)是Java生态系统的核心组件,它通过抽象硬件环境,实现了Java的"一次编写,到处运行"的跨平台特性。本文将深入解析JVM的内部架构与工作原理,包括类加载子系统、运行时数据区、执行引擎等核心组件的详细介绍,以及内存管理、垃圾回收机制的工作原理。此外,本文还将详细介绍JVM性能监控与诊断工具的使用方法,并通过实际案例分析,展示如何解决JVM相关的性能问题,如内存溢出、GC频繁、线程死锁等常见问题。无论你是Java初学者还是有经验的开发者,通过阅读本文,都能对JVM有更深入的理解

2026-01-10 18:45:38 670

原创 《别再迷茫!30分钟掌握AI全栈开发核心概念:大模型/Prompt/Agent/MCP一次讲清》

作为刚接触AI领域的开发者或实习生,你是否被“大模型、Agent、RAG、MCP、Dify”这些新概念搞得晕头转向?本文专为 AI新手 打造,用最直白的逻辑画出一张清晰的“技术地图”:- 从底层大模型到上层应用工具,层层拆解AI技术栈的协作关系- 深度解析Prompt设计、Agent架构、MCP协议等核心概念的工作原理- 对比主流AI开发工具(Cursor/Coze/Dify),告诉你该怎么选- 探讨Java后端与AI智能体的协作模式,传统开发者如何平滑转型无需深奥理论,30分钟建立完整认知框架

2026-01-06 23:15:51 733

原创 从基础到高级!JavaSE核心知识点全整理(面试/复习必备)

【JavaSE面试必背】2026最新版八股文,全面覆盖JavaSE核心知识点!本文包含14大核心模块(Java概述、基础语法、OOP、String、Integer、Object、异常处理、I/O流、序列化、网络编程、泛型、反射、注解、JDK8新特性),共56道高频面试题。每道题均配有详细解析和代码示例,从概念原理到实战应用,层层深入。无论你是准备面试的求职者,还是需要复习巩固的开发者,这份结构化的八股文都能帮你系统掌握JavaSE知识体系,轻松应对面试挑战。收藏本文,随时查阅,助你在JavaSE面试中脱颖而

2026-01-06 22:37:06 808

原创 操作系统期末考试基础知识点速成:高频考点与题集精要

操作系统详细基础高频的知识点速记.包含各章节知识点基于汤小丹《计算机操作系统》(第 4 版)知识点使用与期末考试速成知识点,以及了解高频知识点对应的题型与解法.

2026-01-05 22:31:14 718

原创 《计算机网络期末必考重点精讲:速通高频例题与实战技巧》

本文整理了计算机网络课程期末考试的高频知识点,涵盖体系结构、物理层和数据链路层三大模块。主要内容包括: 体系结构部分重点考察协议分层、时延计算和传输效率,包含6道单选题和2道判断题,涉及RIP封装效率、分组交换时延、OSI模型分层等典型题型。 物理层部分聚焦编码调制、复用技术和传输介质,包含13道单选题和3道判断题,考察QAM调制、CDMA解码、CSMA/CA协议等核心概念,特别强调计算题如波特率换算、码片序列解析。 数据链路层目前仅列出1道基础题,主要检验对链路层功能的理解。全文通过分类整理典型试题,提供

2026-01-05 22:05:15 697

原创 [LeetCode]Hot100系列.堆总结+高频api

本文系统总结了堆(优先级队列)的基础知识与应用场景。首先比较堆与栈的区别:栈维护元素顺序,堆维护元素频率。详细介绍了PriorityQueue的创建方式(默认小顶堆、指定容量、自定义比较器)及常用API(add/offer、remove/poll、peek/size等)。通过三个经典案例详解堆的应用:1)快速选择算法求第K大元素;2)HashMap统计频率+最小堆维护TopK高频元素;3)双堆法(大小顶堆)求数据流中位数。每个案例包含清晰的解题思路和完整Java代码实现,重点突出了堆在排序和频率统计场景下的

2025-11-08 16:46:12 1028

原创 《熬夜整理!湖科大「深入浅出计算机网络」万字详解笔记(持续更新)丨期末+面试高频考点全覆盖》

本文是一份计算机网络学习笔记,面向计算机专业学生备战实习和期末考试。采用"面试问题驱动"的学习方法,基于湖科大教书匠的《深入浅出计算机网络》视频课程,重点梳理了以下核心内容:1. 网络基础概念(ISP、网络组成);2. 三种交换方式(电路交换、分组交换、报文交换);3. 性能指标(速率、带宽、时延等);4. 五层协议体系结构及其分层思想,特别是数据封装/解封装流程。笔记特点是目标明确、可视化呈现、实战导向,附有面试真题和考试重点解析,帮助高效掌握网络核心知识。

2025-11-06 23:08:07 634

原创 [LeetCode]Hot100系列.贪心总结+思想总结

贪心给我最大的感觉就是要在每一次循环中找到最优解,我贪心的(QAQ)看了很多题解,后面发现了一些共性,这几道题都通过在循环中维护一个类似边界数的概念.每次循环里面更新,然后再在每一次循环,也就是(每一次选择)都做出最优解,也就是贪心.代码量少,但是这个思想却不像代码一样好理解,抽象出他们的共性.和上一道一样,要在循环里面维护最远能抵达到哪里,为了统计步数,还要有一个end来统计每一次都边界,每到这个边界说明跳一次,跳到目前能抵达的最远位置,且步数+1。到最后的时候,会进入if语句中,steps会多加1。

2025-11-06 21:33:24 454

原创 [LeetCode]Hot100系列.栈总结+模板

本文总结了栈数据结构的核心应用场景和基本操作。专题规律表明,栈适用于对称匹配、递归嵌套等需要回溯的问题,以及单调序列维护。介绍了栈的基本API操作(创建、入栈、出栈、查看栈顶),并推荐使用双端队列模拟实现。针对不同题目类型,提供了解题思路:如括号匹配问题使用对应括号入栈;特殊问题采用辅助结构;考虑时间复杂度优化;以及解决柱状图最大面积问题的单调栈技巧。最后给出了代码实现模板和边界处理建议,强调通过模式化方法提高解题效率。

2025-11-03 22:57:04 608

原创 从入门到精通JUC:手把手拆解黑马Java并发编程,万字精华笔记出炉

本文详细记录了黑马程序员2019年JUC课程的学习笔记,重点关注并发编程的核心机制。课程从JVM和JMM视角深入剖析了synchronized优化原理、AQS实现机制、线程池原理等关键内容。笔记系统梳理了线程创建方法、线程状态转换、锁机制(轻量级锁、偏向锁等)、CAS原理及原子工具类实现,并分析了线程安全问题及解决方案。课程特色在于从底层原理而非API层面讲解多线程机制,对锁升级、内存屏障等难点有深入解析。笔记适合作为视频课程的辅助学习资料,帮助理解Java并发编程的核心概念与实现原理。

2025-11-02 23:53:37 998

原创 [LeetCode]Hot100系列.二分部分总结+模板

本文总结了二分查找算法的核心要点和解题模板。重点强调了三个原则:循环不变量、边界处理和终止条件。文章提供了多个leetcode题目的解题思路,包括基本二分查找、二维矩阵查找、查找边界、旋转数组查找最小值以及两个有序数组的中位数。解题时要注意区分标准二分和边界查找,并根据不同场景选择合适的模板。特别指出在查找中位数时,通过分割两个数组来避免合并操作,使用二分查找确定分割点。文章建议保持每天两道题的练习进度,以掌握二分查找的各种变体。

2025-11-01 14:01:57 617

原创 [LeetCode]Hot100系列.回溯部分总结+模板

本文总结了回溯算法的解题模板和关键点,主要分为以下内容: 题型分类与核心要点 顺序重要性:不重要(子集/组合/切割)使用startIndex,重要(全排列)用used数组 元素重复性:不可重复传i+1,可重复传i 解题模板应用 全排列:使用used数组标记访问,从0开始遍历 子集问题:for循环从startIndex开始,避免重复组合 组合总和:允许重复使用时传i参数 典型问题解析 字符串分割:判断回文后递归处理剩余部分 N皇后:经典回溯问题,需处理结果构造 实现要点 结果集处理:注意引用问题,推荐新建对象

2025-10-19 17:12:14 507

原创 [LeetCode]Hot100系列.图论部分总结

该学习笔记记录了作者对四道典型算法题的刷题心得与思路总结。前两道分别探讨了树的DFS/BFS应用(岛屿问题和腐烂橘子问题),强调边界判断和遍历顺序的重要性。第三道课程表问题通过构建依赖图和使用三种状态标记(未访问/正在访问/已完成)来检测环。最后一道字典树问题看似复杂,实则是26叉树的模板应用。作者通过反复练习发现细节问题(如边界条件、状态标记等)是关键,建议结合图解理解数据结构。每道题都附有具体实现要点的代码思路,展现了从理解到默写的学习过程。

2025-10-10 18:06:33 474

原创 [LeetCode]Hot100系列.哈希表部分总结

本文总结了算法解题的几个关键思路:1)用哈希映射替代暴力循环优化查找;2)掌握数组排序、集合操作等基础API;3)使用HashSet处理去重问题,并注意遍历方式避免超时(如利用num-1剪枝而非num+1)。作者通过具体案例展示了如何通过优化遍历策略显著提升算法效率。

2025-10-07 14:25:05 269

原创 Nginx核心笔记:从入门到实战

Nginx 就扮演了“流量调度员”的角色,它按照预设的规则(如轮询、权重等),将海量的用户请求合理地分发给后端多个应用服务器,防止任何一台服务器过载,从而提升整个系统的处理能力。本篇nginx主要作为个人笔记,方便快速了解,熟悉他的特点,以及延伸理解相关知识点,涉及到的八股文.以及下载使用方法.那么这些模块之间怎么进行相互的信息传递-->引出zookeeper,RCP,http,MQ,Redis的消息订阅。再看这个图,soa是什么?与他的名字相关,前端发起的请求,同一到他这里处理。SOA与Dubbo?

2025-10-05 19:53:02 150

原创 [leetCode]Hot100系列.树部分总结

摘要:本文总结了树相关算法题的解题思路,主要包括递归遍历、深度计算、对称判断、层序遍历等常见方法。对于二叉搜索树问题,强调利用其有序特性。路径总和、最近公共祖先等较难题型也给出了具体解法,并提到"贡献值"概念在求解最大路径和中的应用。建议在学习时先掌握树的基础知识,再通过递归思想逐步解决问题,同时注意利用二叉搜索树的性质优化算法。

2025-10-05 19:51:14 684

原创 小白也能看懂!!数据库表设计流程,超详细讲解!!!

本文通过奶茶拼团案例,讲解了电商拼团系统的数据库表设计方法。首先从业务场景出发,梳理拼团流程,包括活动配置、用户开团、参团及结果处理等环节。然后详细解析了四张核心表:拼团活动表(记录规则)、折扣表(管理优惠)、用户拼单表(跟踪团状态)和拼单明细表(记录参与者)。文章还介绍了索引优化技巧,并分别从运营和用户视角分析了数据流转过程。最后提供了面试常见问题的解答思路,涵盖业务流程、数据一致性、高并发处理等核心知识点,帮助读者掌握从需求分析到数据库设计的完整方法论。

2025-10-02 15:09:52 522

原创 [LeetCode]Hot100系列.链表部分总结

思路:这个复制以为有随机的存在,不能确保下一个就是被创建好的,所以,用一个哈希表给他映射起来,里面一个老节点,一个新节点,再循环遍历到时候,把老节点的信息给新节点,同时让新节点链接起来,这样哪怕是随机指向的节点也可以在表中取到。思路:环形链表1,不需要返回相遇的节点,采用快慢指针法判断,以链表走到null为边界,定义一个慢指针和一个快指针,慢的1个1个走,快的1一次走两个,如果能相遇就说明有环,起点都在头结点就行.条件以在前边的fast点来判断.

2025-09-27 12:56:24 868

原创 [苍穹外卖]2025最经典JAVA项目 史上最精炼详细教程上

这篇文章是博主第二次学习并记录Nginx部署和前后端联调的教程笔记。文章重点讲解了Nginx的配置、代码初始化、数据库设置、前后端联调步骤,以及JWT权限认证的实现。博主结合实际操作,分享了在开发过程中遇到的问题和解决方案,如端口冲突、密码加密、全局异常处理、分页查询和员工信息修改等。文章还提到了使用工具如Apifox进行接口测试,并推荐了一些实用插件。由于是学习笔记,部分知识点被简化,更详细的内容可参考博主的其他文章。

2025-09-23 23:13:58 359 1

原创 SpringBoot JSON处理与@RequestBody详解

本文介绍了JSON在SpringBoot项目中的处理策略,重点解析了苍穹外卖项目的实现方式。主要内容包括:1. JSON基础概念及前后端交互流程;2. SpringBoot自动通过@RequestBody和Jackson实现JSON转换的机制;3. 自定义JacksonObjectMapper配置类处理日期格式等特殊需求;4. 对比Jackson和FastJSON的应用场景,采用"默认+补充"的双库策略;5. @RequestBody注解的深度解析与常见问题解决方案;6. 自定义JSON

2025-09-23 21:48:14 1306

原创 [苍穹外卖项目]--修改菜品模块--详细学习思路和步骤

增加口味一个id多个口味,根据获得的id遍历把每一个口味设置id。Dto对象给他分开,在两个表分别修改,多表操作加个事务管理。用@PathVariable 注解。根据id修改菜品表,要用动态实现。用这个注解(和增加的操作一样)修改包含--(查询)(回显)在controll层需要接收。后面有where不要忘记了。这个在写删除时已经实现类。要用Vo对象换回给前端。查询口味也是正常的查询。插入部分之前也实现了。

2025-04-26 20:25:55 157

原创 [苍穹外卖项目]--菜品删除模块--详细学习思路和步骤

在dish表中删除菜品基本数据时,同时,也要把关联在dish_flavor表中的数据一块删除。2.我在查询菜品关联时反复检查确认代码正确,但是mapper层一直显示我错误,报错。1.是遍历所有ids,把每一个id都查询一遍看返回的status进行判断。请求的参数是 1,2,3, 这种形式还需要在接受的时候转换一下。1.传入的传输String1,2,3型要用注解转换。这样就会变成 in(1,2,3,4,6)的形式。(给我气的,检查了快2个多小时,还是没找到错误)<foreach>标签是遍历的意思。

2025-04-26 20:22:55 355

原创 [苍穹外卖项目]--分页查询菜品模块--详细学习思路和步骤

2.注意返回的vo类里面 名字得是对应的驼峰命名,categoryName在表里就只是name,在实体类里是catename所以要起别名,让它自动映射。1.这里我犯了一个错,在数据库里写完sql语句直接粘贴过来分号没去掉,导致错误,在这里的sql语句是没有分号的。返回回来的是query形式的,不是json,是?PageResult类型里面存的是总数和当前页的信息。Page<> 泛型是返回给前端的vo里面对应的类。返回回来的page和pageSize是必须的。找到对应的dto里面的接收类看一下。

2025-04-26 20:20:45 257

原创 [苍穹外卖项目]--新增菜品模块--详细学习思路和步骤

[苍穹外卖项目]--新增菜品模块--详细学习思路和步骤

2025-04-25 23:40:44 404

原创 蓝桥真题[三国游戏]java

【代码】蓝桥真题[三国游戏]java。

2025-03-29 20:26:36 189

原创 洛谷P1047 [NOIP2005 普及组] 校门外的树

用数组来表示这段路,初始化数组,把有树的地方都定为0,循环输入m段区间——砍树,把循环的区间都用0赋值,最后循环数组,把0的数量查出来 ,再用总数量减去砍掉的数量。这一部分循环要包含开始和结束两端。这一部分初始化用l+1.

2024-12-20 23:36:56 361 1

原创 洛谷P5723 【深基4.例13】质数口袋JAVA

【代码】洛谷P5723 【深基4.例13】质数口袋JAVA。

2024-11-29 23:27:24 432

原创 洛谷P1980 [NOIP2013 普及组] 计数问题JAVA

代码实现-------------------------------------------------------------------------------------------------------------------之前使用字符拼接,结果提交的时候超时了,把拼装字符换成了StringBuilder提高效率。

2024-11-28 19:30:38 428

空空如也

空空如也

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

TA关注的人

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