自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

工一木子

大家好,我是工一木子,不是工藤新一

  • 博客(583)
  • 资源 (14)
  • 收藏
  • 关注

原创 大厂算法面试 7 天冲刺:第5天- 递归与动态规划深度解析 - 高频面试算法 & Java 实战

动态规划是一种优化递归的算法,核心思想是**“将问题分解为子问题,存储子问题的结果,以避免重复计算”**。你是一个专业的盗贼,计划抢劫一条街上的房屋,每间房屋存有一定现金。个台阶,问有多少种不同的爬楼方式?来解决问题的方法,通常用于。

2025-04-01 07:10:49 296

原创 大厂算法面试 7 天冲刺:第4天- 哈希表与堆算法深度解析 - 高频面试题与 Java 实战

将字母异位词(anagrams)分组。

2025-03-31 07:23:01 320

原创 跟着JDK学数据结构-线性与非线性数据结构的应用与实现

这些线性数据结构在 JDK 中有很好的实现和优化。在学习这些数据结构时,理解它们的基本特性和在 JDK 中的应用非常重要。你可以通过 Java 代码练习这些数据结构的操作,掌握它们的优缺点和适用场景,进一步提升对 JDK 中数据结构的理解。非线性数据结构相比于线性数据结构,具有更复杂的结构和更强大的功能。它们适用于需要处理多对多关系、层次结构或优先级等问题的场景。树:适用于表示层次结构,如文件系统、组织结构等。图:适用于表示复杂关系,如社交网络、网络拓扑等。堆。

2025-03-30 09:44:38 815

原创 大厂算法面试 7 天冲刺:第3天- 栈与队列算法深度解析 - 高频面试题与Java实战

的字符串,判断输入字符串是否有效。

2025-03-30 08:34:43 333

原创 大厂算法面试 7 天冲刺:第2天-链表算法深度解析 - 高频面试题与Java实战

将两个有序链表合并为一个新的有序链表,并返回合并后的链表。给定一个链表,判断它是否有环。,反转该链表并返回其头节点。给定一个单链表的头节点。

2025-03-29 13:43:37 468

原创 大厂算法面试 7 天冲刺:第 1 天 - 深度剖析数组与字符串高频算法(Java 实战)

(最少包含一个元素),使其和最大,并返回最大和。,并返回它们的数组下标。,适用于小规模字符串。,适用于小规模数据。,适用于小规模数据。

2025-03-28 07:26:18 376

原创 7天算法面试通关攻略(含JDK、Spring应用)——3W学习法

帮助你在7天内高效备战大厂算法面试,并结合。的实际应用,提升你的工程能力。

2025-03-28 07:08:42 957

原创 AI 时代程序员的未来:如何从「写代码」到「指导 AI 代码」

最近几年,AI 技术,特别是大语言模型(如 ChatGPT、Claude、Gemini、Code Llama)在编程领域的能力突飞猛进,从简单的代码补全到可以独立编写完整项目,甚至进行复杂的系统架构设计。这些问题看似严峻,但如果深入思考,你会发现 AI 时代不仅仅是挑战,更是机遇。程序员并不会被淘汰,而是需要进化。

2025-03-28 06:37:17 506

原创 7 天精通 Spring:从入门到实战,一步步打造你的 Spring 技术栈!

打印请求日志✅。

2025-03-27 08:06:32 714

原创 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 Cloud 微服务架构:核心组件与最佳实践

是一种。

2025-03-25 07:51:32 1035

原创 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

原创 为什么 Redis 和搜索引擎都在用布隆过滤器?

布隆过滤器(Bloom Filter)是一种。

2025-03-23 07:21:22 731

原创 位运算黑科技:极致优化的 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

原创 不止 Spring!GitHub 上这 5 大框架助你开发高性能微服务(附示例)

以下是几个 GitHub 上优秀的。

2025-03-20 07:10:09 830

原创 LeetCode 算法精粹:3W 法拆解与实战指南

LeetCode 的核心算法解题思路可以通过3W 法(What、Why、How)来总结。这种方法不仅适用于算法题目的解决,还可以延伸到现实生活中的问题解决和框架设计中。1. What(是什么)定义问题:LeetCode 的每道题目都会明确给出问题的定义,包括输入、输出、约束条件等。核心是理解问题的本质,明确需要解决的具体任务。常见算法类型分治法:将问题分解为子问题,分别解决后再合并结果。动态规划:将问题分解为重叠子问题,通过记忆化或递推解决。贪心算法:每一步选择当前最优解,希望最终得到全局最优解。

2025-03-20 06:56:08 534

原创 【GitHub】超有趣的 Java 开源项目推荐

Hutool 是一个小巧但功能强大的 Java 工具库,提供了。

2025-03-19 07:43:17 683

原创 从零手写 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

原创 【工具使用】IDEA社区版如何使用JDK原生命令:从IDEA到命令行的开发技巧

JDK 原生命令(如。

2025-03-12 07:52:26 780

【跟着官网学技术系列之MySQL】第8天之创建和使用数据库2之pet.txt文件

【跟着官网学技术系列之MySQL】第8天之创建和使用数据库2之pet.txt文件

2025-01-18

spring5学习代码

spring5学习代码

2022-01-23

spring5学习笔记

spring5学习笔记

2022-01-23

mybatis学习笔记及代码.zip

mybatis学习笔记及代码.zip

2022-01-03

smbms系统架构图.png

工一说java之smbms系统架构图

2021-10-30

工一说java之SMBMS源码(Servlet版)

工一说java之SMBMS源码(Servlet版)

2021-10-30

工一说javaweb之smbms实战静态资源.zip

工一说javaweb之smbms实战静态资源

2021-10-24

CSS学习总结思维导图.xmind

css学习总结思维导图

2021-09-20

HTML总结.xmind

HTML总结.xmind

2021-08-15

JavaSE思维导图.png

JavaSE复习总结思维导图(PNG图片)

2021-06-30

JavaSE.xmind

JavaSE复习总结思维导图(源文件)

2021-06-30

Head First Python书籍中的源代码

Head First Python书籍中的源代码。解压即可使用。 很实用,是学习python百部百科中推荐的教材中的代码。

2017-12-16

Sublime Text代码编辑软件

Sublime Text是一个代码编辑器也是HTML和散文先进的文本编辑器。漂亮的用户界面和非凡的功能,例如迷你地图,多选择,Python的插件,代码段,等等。完全可自定义键绑定,菜单和工具栏。Sublime Text的主要功能包括:拼写检查,书签,完整的Python API,Goto功能,即时项目切换,多选择,多窗口等等。

2016-04-09

细说Linuxpdf文件--兄弟连版

兄弟连Linux视频的配套电子书籍,在学习Linux的时候,看视频后,再看看书籍,更好!!

2016-02-26

Linux和windows双系统

在windows中安装linux双系统,不用虚拟机。

2015-10-20

空空如也

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

TA关注的人

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