- 博客(39)
- 资源 (3)
- 收藏
- 关注
原创 深入理解Tomcat 基本架构
Tomcat 是 Apache 软件基金会旗下的开源 Servlet 容器,实现了 Java EE(现 Jakarta EE)的 Servlet、JSP 等规范,广泛用于 Java Web 应用的部署和运行。其架构设计围绕和展开。以下从核心组件、层级结构、关键机制三个维度深入解析 Tomcat 的基本架构。
2025-07-07 15:59:11
831
原创 SSM和SpringBoot框架的关系
:SSM 是“手动拼装的汽车”,需要开发者熟悉每个零件的组装;Spring Boot 是“出厂即用的汽车”,开发者只需关注“如何驾驶”(业务逻辑)。
2025-07-03 17:01:31
959
原创 拦截器(Interceptor)与过滤器(Filter)的区别
在 Java Web 开发中,和都是用于处理请求和响应的组件,但它们的设计目标、作用范围和使用场景有显著差异。以下从多个维度对比两者的区别,并结合实际场景说明如何选择。
2025-07-03 15:47:21
761
原创 人脑接口的原理
人脑接口(Brain-Computer Interface,简称 ,也译作脑机接口)是一种在大脑与外部设备之间建立直接通信通道的技术,允许大脑通过神经信号直接控制设备(如计算机、机器人、假肢等),或接收外部设备的反馈信息。其核心原理是,从而实现“意念控制”或“脑-机交互”。
2025-07-03 15:00:58
618
原创 MongoDB 常用增删改查方法及示例
MongoDB 的增删改查(CRUD)操作是其核心功能,主要通过或驱动(如 Node.js、Python 等)实现。以下是最常用操作的详细说明及示例(基于语法)。
2025-07-01 18:38:15
950
原创 MongoDB 和 Redis的区别
MongoDB 和 Redis 是两种不同类型的 NoSQL 数据库,虽然都属于非关系型数据库,但核心设计理念、数据模型、适用场景差异显著。以下从多个维度对比两者的区别,并结合典型场景说明如何选择。
2025-06-27 18:30:30
797
原创 Springboot整合Elasticsearch及常用方法大全
若需要更细粒度控制(如连接池、线程池),可自定义或@Bean// 或直接使用 Spring Data 提供的 ElasticsearchRestTemplate(已过时,新版推荐 ElasticsearchClient)// @Bean// }
2025-06-27 17:01:38
1555
原创 Kubernetes核心技术原理详解
Kubernetes(K8s)是云原生领域的核心容器编排系统,其设计目标是。要理解其核心技术原理,需从等维度展开。
2025-06-21 15:32:59
264
原创 NACOS 核心技术原理详解
Nacos()是阿里巴巴开源的,广泛应用于微服务架构中,解决服务实例动态注册与发现、配置集中管理与动态推送、服务治理(如流量控制、熔断限流)等核心问题。其核心技术原理围绕设计,融合了服务发现、配置管理、分布式协调等多领域技术。
2025-06-16 22:23:59
945
原创 @Scheduled 底层实现原理
Scheduled是 Spring 框架提供的,用于声明式地定义周期性或固定间隔执行的任务。其底层实现涉及 Spring 的任务调度模块()、注解处理机制()以及 JDK 的定时任务工具(如。
2025-06-16 17:22:36
675
原创 Lambda 表达式的原理及用法详解
Lambda 表达式是 Java 8 引入的,其核心目的是简化(仅含一个抽象方法的接口)的匿名实现类的代码编写。它通过更简洁的语法(类似数学中的“λ 表达式”)让代码更接近自然语言,同时推动了 Java 向函数式编程范式的演进。
2025-06-16 14:15:29
740
原创 函数式接口示例及详解【可以不用,但不能不懂】
函数式接口(Functional Interface)是 Java 8 引入的核心特性之一,是 Lambda 表达式和方法引用的基础。它的定义非常简单:(可以有默认方法、静态方法和从Object继承的方法)。通过注解(可选,但推荐)显式标记,编译器会强制检查该接口是否符合函数式接口的规范。
2025-06-16 11:48:01
501
原创 Druid 连接池详解
Druid(全称 )是阿里巴巴开源的,同时也是数据库监控与防御工具。它不仅实现了传统连接池的核心功能(如连接复用、生命周期管理),还提供了丰富的扩展能力(如 SQL 监控、慢查询分析、SQL 防火墙、连接泄漏检测等),是 Java 生态中最主流的数据库连接池之一(尤其在 Spring Boot 项目中广泛使用)。
2025-06-15 21:59:14
1044
原创 @SpringBootTest 详解
是 Spring Boot 提供的,用于标记一个测试类需要加载完整的 Spring 应用上下文(Application Context),并支持对 Spring 生态组件(如 Service、Repository、Controller 等)的集成测试。它是 Spring Boot 测试工具包()的一部分,通常与 JUnit 5(@Test)配合使用。
2025-06-15 21:42:53
871
原创 C语言执行 main() 函数前,程序都做了什么
在 C 语言程序中,main()函数是用户代码的逻辑起点,但在它被执行之前,程序需要经历等多个关键阶段。这些阶段由编译器、链接器、操作系统共同协作完成,确保程序具备运行所需的环境和资源。
2025-06-14 14:17:38
986
原创 Spring Boot 常用注解面试题深度解析
Spring Boot 注解是其“约定优于配置”的核心实现工具,通过注解简化了传统 Spring 应用的繁琐配置。以下从出发,深度解析 Spring Boot 最常用注解的原理、作用及使用场景,覆盖启动类、配置、依赖注入、AOP、Web 开发等核心场景。
2025-06-12 19:11:11
812
原创 Linux-进程间的通信
在Linux系统中,进程间通信(Inter-Process Communication, IPC)是指不同进程之间交换数据或协调操作的机制。由于进程的内存空间相互隔离,操作系统提供了多种IPC方式,让进程能安全高效地通信。
2025-06-11 17:00:42
1042
原创 5分钟上手【Markdown】:效率提升100%实践
别慌!Markdown 是一种的超简单语法,5分钟就能学会核心操作。搭配好用的编辑器和插件,效率直接翻3倍!
2025-06-11 14:39:20
779
原创 小程序原理深度剖析:从架构到运行机制
小程序的核心原理是依托宿主App的沙盒环境,通过双线程模型分离视图与逻辑,结合类Web技术实现轻量化开发,同时通过桥接层扩展原生能力。其优势在于“即用即走”的用户体验、低开发成本和跨平台能力,局限性则源于对宿主的依赖(功能受限于宿主开放接口)。理解其架构与运行机制,有助于开发者更好地优化性能、规避坑点(如数据更新延迟、权限问题),并充分发挥小程序的价值。
2025-06-11 10:30:01
366
原创 程序编译器原理简述
程序编译器的工作原理可以简单概括为“翻译+检查+优化”,核心是将人类能看懂的高级语言代码(如C、Java),转换成计算机能直接执行的机器指令(二进制代码)。
2025-06-11 09:34:14
363
原创 缓存架构方案:Caffeine + Redis 双层缓存架构深度解析
支持自动加载、刷新、过期:可以自动加载数据到缓存中,还能根据配置自动刷新缓存项,并在缓存项过期后将其移除。高并发读写性能优秀:使用 Segmented Locking(分段锁)来优化并发性能,避免在高并发情况下造成锁竞争,从而实现高吞吐量的缓存访问。适用于热点数据快速访问场景:对于需要频繁访问但又不会频繁变更的数据,如配置信息、枚举值等,Caffeine 可以将其缓存起来,减少对数据库或其他存储系统的访问,提高数据读取速度。支持持久化、集群部署、Lua 脚本等高级功能。
2025-06-03 17:42:49
1114
原创 Sa-Token 框架介绍及用法
核心理念:以简单易用、功能强大、扩展性强为特点,通过简洁的API和注解驱动,降低权限系统的开发复杂度,其核心原理是基于Token机制实现用户的身份认证和权限校验。核心功能权限认证:提供丰富的权限认证方式,包括登录认证、角色认证、权限认证等,可轻松实现各种权限控制场景。支持注解式权限管理、路由鉴权等多种鉴权方式,还能进行权限码模糊匹配、使用权限通配符等操作。会话管理:提供强大的会话管理功能,支持分布式会话,使得在不同服务器之间的用户状态得以共享。
2025-05-30 17:29:34
408
原创 请说一下什么是LRUCache
LRUCache即最近最少使用缓存,是一种常用的缓存淘汰策略,用于在有限的存储空间下,优化资源的利用率和访问效率:具体数据结构详情可见:数据结构:LRU Cache_cache lru-CSDN博客
2025-05-30 16:39:47
224
原创 RedisMessageListenerContainer 原理及用法
是 Spring Data Redis 提供的一个类,用于接收来自 Redis 频道的消息,并驱动注入其中的实例。
2025-05-29 11:30:49
412
原创 整理redis在项目中有哪些应用场景(必会)
Redis作为一种高性能的内存数据库和缓存服务器,在项目中有着广泛的应用场景,以下是一些常见的应用场景:
2025-05-29 11:24:12
339
原创 @Cacheable 原理及用法
Cacheable是 Spring 框架中用于方法级别缓存的注解,通过动态代理和 AOP 机制实现缓存逻辑,显著提升重复计算或数据库查询场景的性能。
2025-05-24 11:24:00
556
原创 SseEmitter及其用法
SseEmitter是 Spring Framework 提供的一个类,用于实现 (Server-Sent Events, SSE)的功能。它允许服务器通过 HTTP 长连接持续向客户端推送数据,适用于实时更新、通知推送等场景。
2025-05-23 11:40:20
534
原创 vue项目的目录结构及运行过程
Vue 项目通过组件化开发、路由和状态管理实现高效开发,运行过程依赖构建工具(如 Vite)和模块化设计。如需进一步优化(如代码分割、PWA),可参考 Vue 官方文档。实时调试,生产环境通过。
2025-05-21 22:54:12
508
原创 python 使用代理IP
终于找到一个暂时可以使用的代理IP,不过现在有的网站可以检测到使用了代理IP,每次访问都只会返回本机的IPimport urllib.requesturl = 'http://icanhazip.com'#url = 'http://httpbin.org/ip'#url = 'https://www.whatismyip.com'#url = 'http://www.net.cn/s...
2020-01-06 14:27:53
2211
原创 使用python进行有道翻译
使用python进行有道翻译import urllib.requestimport urllib.parseimport jsonwhile True: content = input("please input what you want to translate:(enter quit to quit)") if content == 'quit':...
2020-01-06 12:58:24
297
转载 Ubuntu解决apt install 下载速度太慢
转载https://blog.csdn.net/xcyww/article/details/82420651之前使用apt install下载软件速度几乎不动,下载速度以B/s计量。使用如下方法,切换源之后速度飞起,亲测好用,推荐大家。命令方式今天在用虚拟机安装编译linux内核所需依赖库的时候,使用 apt-get 指令进行安装速度非常之不稳定,而且大多时候都很慢。原因是其默认源在国外,...
2019-03-24 12:29:23
6610
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人