- 博客(583)
- 资源 (14)
- 收藏
- 关注
原创 大厂算法面试 7 天冲刺:第5天- 递归与动态规划深度解析 - 高频面试算法 & Java 实战
动态规划是一种优化递归的算法,核心思想是**“将问题分解为子问题,存储子问题的结果,以避免重复计算”**。你是一个专业的盗贼,计划抢劫一条街上的房屋,每间房屋存有一定现金。个台阶,问有多少种不同的爬楼方式?来解决问题的方法,通常用于。
2025-04-01 07:10:49
296
原创 跟着JDK学数据结构-线性与非线性数据结构的应用与实现
这些线性数据结构在 JDK 中有很好的实现和优化。在学习这些数据结构时,理解它们的基本特性和在 JDK 中的应用非常重要。你可以通过 Java 代码练习这些数据结构的操作,掌握它们的优缺点和适用场景,进一步提升对 JDK 中数据结构的理解。非线性数据结构相比于线性数据结构,具有更复杂的结构和更强大的功能。它们适用于需要处理多对多关系、层次结构或优先级等问题的场景。树:适用于表示层次结构,如文件系统、组织结构等。图:适用于表示复杂关系,如社交网络、网络拓扑等。堆。
2025-03-30 09:44:38
815
原创 大厂算法面试 7 天冲刺:第2天-链表算法深度解析 - 高频面试题与Java实战
将两个有序链表合并为一个新的有序链表,并返回合并后的链表。给定一个链表,判断它是否有环。,反转该链表并返回其头节点。给定一个单链表的头节点。
2025-03-29 13:43:37
468
原创 大厂算法面试 7 天冲刺:第 1 天 - 深度剖析数组与字符串高频算法(Java 实战)
(最少包含一个元素),使其和最大,并返回最大和。,并返回它们的数组下标。,适用于小规模字符串。,适用于小规模数据。,适用于小规模数据。
2025-03-28 07:26:18
376
原创 AI 时代程序员的未来:如何从「写代码」到「指导 AI 代码」
最近几年,AI 技术,特别是大语言模型(如 ChatGPT、Claude、Gemini、Code Llama)在编程领域的能力突飞猛进,从简单的代码补全到可以独立编写完整项目,甚至进行复杂的系统架构设计。这些问题看似严峻,但如果深入思考,你会发现 AI 时代不仅仅是挑战,更是机遇。程序员并不会被淘汰,而是需要进化。
2025-03-28 06:37:17
506
原创 3W 学习法:从零上手 Cursor,打造高效 Java 开发体验
Cursor 可以大幅提升 Java 和 Spring 生态的开发效率,帮助你更快写代码、更好理解源码、更快修复 Bug。Cursor 是一款智能 AI 编程助手,能够显著提升开发效率,特别适用于 Java 和 Spring 生态。Cursor 是一款基于 AI 的编程工具,深度集成 AI 代码补全、代码解释、调试优化等功能,可以。:你想快速编写一个 RESTful API,Cursor 会自动补全代码。:你的代码结构复杂,Cursor 可以优化代码。,帮助你快速掌握 Cursor,并提供。
2025-03-26 07:16:46
727
原创 手把手实现一个简化版 Spring 框架
是 Java 生态的核心,掌握其原理后,我们可以自己实现一个简化版的 Spring 框架!等核心功能入手,助你成为 Spring 领域专家!实现一个 Mini-Spring 框架!Spring 通过 @Autowired。Mini-Spring 目标是。,负责 Bean 的加载与管理。Spring AOP 允许我们。(自动扫描 & Bean 注册):实现 Bean 容器,支持。✅ 解决实际问题,提升。Spring 的核心是。实现 Bean 容器。
2025-03-26 06:59:21
394
原创 深度剖析 Spring 源码 & 性能优化:核心原理与最佳实践
作为 Java 生态的核心技术,广泛应用于企业级开发。但很多开发者只会“用”Spring,而不深入其内部原理,导致。三个方面,帮助你深入理解 Spring,并掌握优化技巧,让你的 Spring 应用跑得更快、更稳!Spring 提供了大量的扩展点和特性,但如果不加以优化,容易导致。这里总结 Spring 应用的 5 大核心优化方向。Spring MVC 处理请求时,需要经过。Spring IOC 容器的核心是。Spring 启动时间过长,通常由。,如果滥用会影响性能。,可能影响并发性能。
2025-03-26 06:52:17
753
原创 高并发电商商详网关系统设计:架构、优化与实战
在电商平台中,商品详情(商详)页面是用户决策的关键环节,系统需要。模式,使数据聚合更灵活,并减少前端调用次数,提高响应速度。:如何高效整合商品、价格、库存等多个系统数据?:如何减少 API 请求时间,提高用户体验?:Redis + 本地缓存,减少数据库压力。:如何支持不同商品类型、营销模式的扩展?(Guava 本地缓存 + Redis):秒杀、促销场景的流量洪峰如何处理?:如何防止恶意爬取、DDOS 攻击?:限流、熔断、降级等机制防止系统崩溃。:微服务架构,支持水平扩展。(Redis,长时间缓存)
2025-03-25 08:04:38
792
原创 Spring Boot 自动装配原理深度解析:从源码到实战
的思想,自动加载适合当前项目的 Spring 组件,让开发者无需手动编写繁琐的 XML 或 Java 配置文件。是 Spring Boot 的核心特性之一,它通过。Spring Boot 自动装配的核心逻辑位于。但在 Spring Boot 中,我们只需。,Spring Boot 会自动创建它!,无需手动配置,Spring Boot。Spring Boot 会自动创建。Spring Boot 通过。Spring Boot 通过。当 classpath 存在。,负责加载所有自动配置类。,可以按以下步骤操作。
2025-03-25 07:41:58
894
原创 Spring 事务管理全解析:原理、源码与实战
Spring 事务支持 7 种传播行为(Propagation),用于控制嵌套事务的执行方式。如果 Spring Boot 已自动配置,无需额外配置。,并通过代码实战讲解如何正确使用 Spring 事务。是保证数据一致性的重要机制,Spring 通过。事务是数据库操作的最小执行单元,必须具备。:需要在代码中动态管理事务的复杂场景,例如。如果是 Spring Boot 项目,的操作被撤销,避免数据错误。如果想手动控制事务,可使用。是最推荐的方式,简洁高效。❌ 发生异常,事务回滚,,拦截方法执行,委托。
2025-03-24 07:19:04
933
原创 Spring MVC 深度解析:原理、源码剖析与实战
在 Spring 体系中,Spring MVC 作为 Web 层的核心框架,承担着请求处理、参数解析、视图渲染等关键任务。Spring MVC(Model-View-Controller)是一种基于。:Spring 事务管理(事务传播、@Transactional 源码分析)构建一个简单的 Spring MVC 应用,并实现。Spring MVC 在启动时,会通过。是 Spring MVC 用于。:每次请求前打印日志,方便调试。,作为 MVC 的中央调度器。Spring MVC 通过。
2025-03-24 06:59:51
1084
原创 深入解析 Spring IOC & AOP:原理、源码与实战
IOC(Inversion of Control)是 Spring 的核心思想,它将对象的创建和依赖关系的管理交给 Spring 容器,避免了传统的。今天,我们将深入剖析它们的原理,结合源码解析,并通过 Java 代码实战来掌握这两个核心概念。我们用 Java 代码手写一个简化版的 IOC 容器,模拟 Spring 依赖注入的实现。实现 AOP,模拟 Spring。在 Spring 中,我们可以使用。Spring AOP 主要通过。Spring AOP 主要使用。注解实现 AOP 事务管理。
2025-03-23 23:00:01
631
原创 如何快速精通 Spring,成为专家并打造自己的 Spring 框架?
整合 Tomcat,构建轻量级 Web 框架。:基于 JDK 动态代理实现 AOP。:阅读 Spring 关键源码并总结。:对标 Spring,优化框架设计。:总结学习心得,提升影响力。:与专家交流,获取前沿技术。
2025-03-23 22:27:19
829
原创 如何高效参与 GitHub 知名项目开发并成为核心贡献者
参与知名 GitHub 项目开发不仅能提升你的编程能力,还能积累开源贡献经验,甚至为求职加分。你可以从小的 Issue 开始,逐步深入开源项目,成为核心贡献者!:遵循项目的代码规范、编写单元测试。:维护者更愿意合并积极沟通的贡献。
2025-03-23 22:17:33
1196
2
原创 开发者必备:全球最受欢迎的10大技术投稿平台推荐
比如“10 个 Java 并发编程的最佳实践”比“Java 并发”更有吸引力。:不同平台面向的技术人群不同,比如 CSDN 偏 Java,掘金更偏前端。你计划在哪些平台投稿?如果有特定的投稿主题,我可以帮你优化内容结构 😊。等渠道同步发布,提高曝光量。
2025-03-23 08:26:56
364
原创 IP 的前世今生:从域名解析到网页渲染,揭秘背后的黑科技
IP(Internet Protocol,互联网协议)是网络通信的核心,它的主要作用是为每个联网设备提供,确保数据能正确传输。IP 地址虽然是互联网设备的唯一标识,但。因此,诞生了,它是 IP 地址的,让用户可以通过更直观的方式访问网站。域名系统(DNS, Domain Name System)是一种分布式数据库,负责将,类似于。例如,当你输入,DNS 服务器会解析它并返回对应的 IP 地址,比如,然后你的浏览器才能成功访问百度。一个完整的域名通常由多个部分组成,例如combaiduwww。
2025-03-23 07:40:15
817
原创 位运算黑科技:极致优化的 6 大技巧,你都会吗?
位运算(Bitwise Operation)是计算机科学中的底层操作,它直接作用于二进制位,能够极大提升运算效率。在算法竞赛、系统开发、加密技术、图像处理等领域,位运算发挥着重要作用。:数组中除了一个元素外,其他元素都成对出现,找出这个唯一元素。,相同数字异或为 0,0 与任何数异或仍为该数。更加底层,部分 CPU 指令级优化场景可用。:比普通运算更快,适合底层优化。:比逐位检查更快,时间复杂度。为 0 则相等,否则不等。,相同为 0,不同为 1。方案更快,避免了模运算。更高效,无需除法运算。
2025-03-21 23:22:07
868
原创 客户端与 APP:傻傻分不清?一文搞懂它们的区别与联系!
客户端(Client)是一个广义的概念,指的是用户与服务器交互的入口。它可以是一个软件、应用、浏览器,甚至是终端设备。客户端的主要作用是向服务器发出请求,并接收服务器的响应。客户端的分类:桌面客户端(Desktop Client)运行在 PC 或 Mac 上的应用程序,例如:QQ、微信 PC 版、IDEA、Visual Studio。Web 客户端(Web Client)通过浏览器访问的 Web 应用,例如:Gmail、百度搜索、在线文档。移动客户端(Mobile Client)
2025-03-21 23:08:45
843
原创 LeetCode 算法精粹:3W 法拆解与实战指南
LeetCode 的核心算法解题思路可以通过3W 法(What、Why、How)来总结。这种方法不仅适用于算法题目的解决,还可以延伸到现实生活中的问题解决和框架设计中。1. What(是什么)定义问题:LeetCode 的每道题目都会明确给出问题的定义,包括输入、输出、约束条件等。核心是理解问题的本质,明确需要解决的具体任务。常见算法类型分治法:将问题分解为子问题,分别解决后再合并结果。动态规划:将问题分解为重叠子问题,通过记忆化或递推解决。贪心算法:每一步选择当前最优解,希望最终得到全局最优解。
2025-03-20 06:56:08
534
原创 从零手写 Spring 风格 IoC 容器:支持自动扫描与依赖注入
是 Spring 框架的核心机制之一,它将对象的创建和依赖管理交给 IoC 容器,避免了对象之间的强耦合。你可以基于本示例进一步扩展,如支持 XML 配置、Bean 生命周期管理等,打造更完整的 IoC 容器。主要用于存储 Bean 的元信息,如类对象、是否为单例等。用于标注成员变量,IoC 容器会自动注入该类型的 Bean。的 IoC 容器,以深入理解 IoC 的工作原理。用于标注类,使 IoC 容器能自动扫描该类并注册。—— 解决多个相同类型 Bean 的注入问题。进行类扫描,自动注册 Bean。
2025-03-19 07:35:40
652
原创 程序员的13种高收益副业:技术、知识付费与创业全指南
在当今时代,程序员可以选择多种副业来增加收入、提升技能或探索兴趣。,如写博客、接外包、开发工具;有一定经验后,可以尝试 SaaS、知识付费、团队创业等模式。(短视频、电商、投资)等多个方向选择。(开发插件、开源变现、知识付费)、(AI 工具、咨询服务)到。对于刚开始的程序员,建议。适合程序员的副业可以从。
2025-03-18 22:49:29
511
原创 【设计模式】一文掌握11种行为型设计模式:3W学习法 + Java实战 + 开源框架解析
设计模式是软件开发的精髓,行为型模式(Behavioral Patterns)关注对象之间的交互和职责分配。本文将用3W 学习法(What、Why、How)系统总结行为型模式,结合UML 图、Java 代码示例和开源框架实战,帮助你真正掌握这些模式。1. 策略模式(Strategy Pattern)🟢 What:是什么?策略模式定义了一组算法,将它们封装起来,使它们可以互换,客户端可以动态选择不同的算法执行逻辑。🔴 Why:为什么需要?避免if-else或代码臃肿。允许运行时动态更换策略,提高灵活性。
2025-03-18 22:39:52
1268
原创 【设计模式】3W 学习法全面解析 7 大结构型模式:Java 实战 + 开源框架应用
结构型模式主要关注类与对象的组合,确保不同组件之间能够高效协作,提高系统的灵活性和可维护性。本文采用3W 学习法(What、Why、How),深入分析七大结构型模式(适配器、桥接、装饰器、组合、外观、享元、代理),并结合Java 代码实战及开源框架中的应用,帮助你高效掌握这些模式的实战技巧。
2025-03-18 07:12:28
760
原创 【设计模式】3W 学习法深入剖析创建型模式:原理、实战与开源框架应用(含 Java 代码)
创建型模式主要关注对象的创建,旨在提高代码的可复用性、可扩展性和灵活性。本文采用3W 学习法(What、Why、How),深入分析五大创建型模式:单例、工厂方法、抽象工厂、建造者和原型模式,并结合Java 代码实战及开源框架中的应用,帮助你高效掌握创建型模式。抽象工厂模式提供一个接口,用于创建一系列相关或相互依赖的对象,而无需指定其具体类。设计模式主要作用适用场景单例模式保证唯一实例日志管理、数据库连接池工厂方法解耦对象创建抽象工厂创建产品族GUI 组件、数据库连接建造者。
2025-03-18 06:32:39
983
原创 【IDEA插件开发】IntelliJ IDEA 插件开发指南
IntelliJ IDEA 是 JetBrains 开发的一款强大的 IDE,支持插件扩展,使其更具灵活性。构建插件,实现各种自定义功能,比如代码自动生成、重构增强、代码检查等。🚀 你还希望插件实现哪些。
2025-03-14 07:18:55
1424
原创 【Java基础】一文快速掌握Java 8新特性:功能对比与实战代码解析
Java 8的特性使得我们可以写出更加简洁、易读、并且高效的代码。通过对比不同版本的实现方式,我们可以明显看到Java 8在Lambda表达式、Stream API、默认方法等方面带来的改进和便利,进一步提升了Java的函数式编程能力和代码质量。
2025-03-14 07:12:13
518
原创 【HeadFirst系列之HeadFirstJava】第19天之深入理解访问者模式:解耦对象结构与操作的优雅设计
在面向对象编程中,我们经常需要对一组对象执行不同的操作。但当操作增多时,代码变得复杂,违背了。类中添加这些方法,代码会变得复杂且难以维护。允许我们把操作从数据结构中提取出来,将操作封装到独立的。:访问者需要访问对象的内部状态,可能破坏封装性。,让你可以在不修改原有类的情况下添加新功能。:访问者可以对不同类型的对象执行相似操作。:可以轻松添加新访问者,实现新的功能。:可以新增操作,而不修改数据结构。:涉及多个类,使代码结构更加复杂。(对扩展开放,对修改封闭)。,其中包含不同类型的员工,如。
2025-03-13 07:55:21
916
原创 【HeadFirst系列之HeadFirstJava】第18天之深入理解 RMI:Java 远程方法调用与分布式计算实战
正是 Java 提供的分布式技术之一。《Head First Java》第 18 章详细介绍了 RMI 的概念和实现,本篇文章将对其核心内容进行提炼,并提供。在单机应用中,方法调用通常发生在同一个进程内,调用者和被调用者共享相同的内存。,实现跨进程、跨网络的通信。它隐藏了底层的网络细节,使远程调用看起来像本地方法调用。下,方法可能运行在不同的物理机器上,这就引出了。客户端通过 RMI 查找远程对象,并调用其方法。,并且所有远程方法都必须声明抛出。,帮助你掌握 RMI 的应用。,然后将远程对象绑定到。
2025-03-13 07:20:43
829
原创 【Java基础】深入解析 Java 的深拷贝与浅拷贝:原理、实现与开源框架应用
在 Java 开发中,我们经常需要复制对象,但不同的复制方式会导致截然不同的行为。是两种常见的对象克隆方式,它们在不同场景下有各自的优缺点。作用域类似于深拷贝,每次获取 Bean 都会返回新的实例。,修改其中一个对象的引用字段,另一个对象也会受影响。,探讨如何在 Java 中实现它们,并分析它们在。也可以实现 Java 对象的浅拷贝。对象,来对比浅拷贝和深拷贝的不同。,修改其中一个不会影响另一个。类作为示例,它包含一个。
2025-03-13 06:54:36
425
原创 【HeadFirst系列之HeadFirstJava】第18天之深入理解原型模式:从问题到解决方案(含 Java 代码示例)
本篇文章将基于《Head First 设计模式》的内容,深入剖析原型模式的概念、应用场景、优缺点,并结合 JDK 和 Spring 框架的实际应用,提供详细的 Java 代码示例,帮助你掌握这一设计模式的精髓。在软件开发中,我们经常需要创建对象,而有些对象的创建成本较高或者结构较为复杂。,如果需要多次创建相同的用户对象,每次都去查询数据库,会造成资源浪费。,确保复制的是一个新的实例,而不是共享同一个对象。:仅复制对象的基本属性,对于对象引用类型,仅复制。是两个不同的对象,但数据相同。示例来演示原型模式。
2025-03-13 06:19:14
893
Sublime Text代码编辑软件
2016-04-09
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人