- 博客(186)
- 收藏
- 关注
原创 小结: getSpringFactoriesInstances从 `spring.factories` 文件中加载和实例化指定类型的类
是 Spring Boot 框架中的一个核心方法,用于从文件中加载和实例化指定类型的类。这是 Spring Boot 实现自动配置和插件化扩展的关键机制。
2025-08-11 16:12:06
1172
原创 小结:`SpringApplicationRunListeners` 如何与 `ApplicationStartingEvent` 关联;Spring Boot 启动事件时序
的一个核心实现,负责发布Spring Boot启动过程中的各种事件。让我解释Spring Boot启动过程中各个时间点对应的具体事件。如何关联在一起的完整过程。通过这种机制,Spring Boot能够在启动过程中不同阶段发布相应的事件,允许开发者通过监听这些事件来执行自定义逻辑。这些事件为开发者提供了在应用启动不同阶段执行自定义逻辑的机会,使得我们可以精确控制在何时执行什么样的初始化任务。发布到Spring的事件系统中,这样所有监听该事件的监听器都会收到通知。时,实际上是遍历所有注册的监听器并调用它们的。
2025-08-11 13:24:24
852
原创 AI:langchain4j使用
如果你只使用阿里百炼,只需要引入 langchain4j-community-bom 和对应的 langchain4j-community-dashscope-spring-boot-starter。百炼(DashScope)是阿里云提供的服务,由 LangChain4j 社区提供集成支持,因此放在 langchain4j-community-bom 中。OpenAI 是 LangChain4j 官方原生支持的模型,因此放在官方 BOM langchain4j-bom 中。
2025-08-05 10:54:13
759
原创 小结:springboot2x 异常,国际化,log
维度(全局异常处理)作用范围处理 HTTP 错误码(如 404、500)处理代码中抛出的异常(如依赖接口继承或实现使用常见用途自定义错误页面或 JSON 响应捕获并统一处理业务异常返回数据Spring Boot 默认错误结构或自定义完全自定义结构可否共存✅ 可以同时存在✅ 可配合使用用统一处理/error路径的异常(如 404);用处理业务逻辑中主动抛出的异常(如参数错误、权限校验失败等)。Spring Boot 倡导使用。
2025-08-04 10:41:32
718
原创 小结:navigator.geolocation.getCurrentPosition获取设备当前地理位置信息
是 Web API 中用于获取设备当前地理位置信息的方法,它背后的定位原理和准确性取决于设备的类型、操作系统、网络环境、浏览器权限控制等多个因素。
2025-07-25 10:26:06
996
原创 小结:Spring MVC 的 XML 的经典配置方式
方式配置方式特点XMLbean 的 id 就是 URLXML更灵活,支持多个 URL 到 bean 的映射注解+ ``XML + 注解更现代,更简洁,推荐使用。
2025-07-18 15:38:59
1292
原创 小结:Java Web 技术的三个发展阶段
早期关注流程控制和手工 SQL中期开始封装数据库操作(Spring JDBC / MyBatis)现代更多依赖注解、自动化配置、ORM 框架(JPA / MyBatis + Mapper 注解)
2025-07-18 15:38:28
903
原创 Spring AOP(面向切面编程,Aspect-Oriented Programming)
是 Spring 框架提供的轻量级面向切面编程实现,通过代理模式(JDK 动态代理或 CGLIB)实现运行时织入。它通过切面、切点和通知分离横切关注点,广泛应用于日志、事务、权限控制等场景。是 Spring 框架提供的面向切面编程支持,用于将横切关注点(cross-cutting concerns,如日志、事务、权限检查等)与核心业务逻辑分离。AOP 允许开发者通过声明式方式将通用功能模块化,减少代码重复,提高代码可维护性。等)定义切面,适合现代 Spring 应用。等)更现代化且易用。
2025-06-12 17:28:46
654
原创 小结:Spring AOP 切点表达式
Spring AOP 仅支持方法级别的切点(相比 AspectJ 的字段、构造器等更广泛支持),通过表达式指定目标方法,结合通知(Advice)实现横切逻辑。是 Spring AOP 的核心,用于定义需要拦截的方法。基于 AspectJ 表达式语言,Spring AOP 提供灵活的匹配规则,常用关键字包括。是 Spring AOP 用于定义哪些方法(或连接点)需要被拦截的规则,主要基于。组合表达式,可以实现复杂的匹配逻辑。**1. **XML 配置。**2. **注解配置。
2025-06-12 17:12:54
1081
原创 小结:JavaScript 模块化工具链
是现代前端开发中用于组织、管理和优化模块化代码的核心工具集合。以下是关于 JS 模块化工具链的概述,包括关键工具、作用和常见工作流程:****1. **模块化的背景JavaScript 模块化是为了解决代码组织、依赖管理和作用域隔离的问题。常见的模块化规范包括:ES Modules 已成为主流,现代工具链大多围绕 ESM 构建。**2. **核心工具链以下是构建 JS 模块化工具链的常见工具及其作用:**(1) **模块打包工具(Bundlers)模块打包工具将多个模块(JS、CSS、图片等)合并为少量优化
2025-05-16 14:56:47
1154
原创 小结:jvm 类加载过程
类加载器通过委派链形成包含关系,每个加载器通过parent字段引用父加载器,而非继承。这种设计保障了核心类库的隔离性与安全性,同时允许用户自定义类加载逻辑。
2025-05-16 10:12:29
1288
原创 小结: js 在浏览器执行原理
多进程架构多线程机制一个独立的渲染进程,负责解析 HTML、CSS、执行 JavaScript、渲染页面等。**渲染进程。
2025-05-15 23:26:31
1076
原创 小结:HotSpot VM
编译阶段:通过Java编译器将源代码文件编译成字节码文件。运行阶段:通过Java虚拟机加载、校验并执行字节码文件,其中可能涉及解释执行和即时编译优化。这个过程确保了Java程序的跨平台特性和高效执行。Java虚拟机通过类加载子系统将字节码文件加载到内存中,并经过验证、准备和解析等步骤后进行初始化。运行时数据区提供了必要的内存结构来支持程序的执行,而执行引擎则负责解释或编译执行字节码指令。此外,本地方法接口和本地方法库使得Java程序能够调用非Java语言编写的函数,从而扩展了Java的应用范围。
2025-05-14 11:21:50
650
原创 小结:Android系统架构
Android系统的架构设计使得它具有高度的模块化和可扩展性,各个层次之间通过明确的接口进行通信和协作。应用程序层和应用框架层为用户提供丰富的功能和服务,库和运行时层提供了必要的支持库和虚拟机,而Linux内核层则负责管理和调度底层硬件资源。这种分层设计不仅提高了系统的稳定性和安全性,还方便了开发者进行应用程序的开发和维护。
2025-05-14 11:05:50
1075
原创 小结:ipsec-ike
IPSec 手动配置与自动配置(IKE动态协商)fill:#333;color:#333;color:#333;fill:none;开始手动定义参数静态SPI值固定密钥无IKE协商直接建立SA流量匹配ACL时加密通过SPI+密钥加解密隧道维持至手动删除fill:#333;人工同步SPI和密钥镜像配置\n spi inbound=1002 outbound=1001\n hex-key相同数据包+ESP头(SPI=1002)\nAES-256加密/SHA-256认证。
2025-05-01 21:30:04
1107
原创 小结:PKI(Public Key Infrastructure,公钥基础设施)
项目数字指纹(摘要)数字签名定义对消息进行哈希运算得到的唯一“摘要值”用发送者私钥对数字指纹加密后的加密结果用途检测消息是否被篡改(完整性校验)验证消息的来源和是否被篡改(身份 + 完整性)生成方式使用**哈希算法(如 SHA-256)**处理消息内容用私钥对摘要进行加密(如 RSA/ECC 签名)是否加密❌ 不加密,只是摘要✅ 是用私钥加密后的摘要是否可验证身份❌ 无法验证身份✅ 可验证签名者身份加密用途常用算法管理安全(SSH/HTTPS)数据链路加密(MACsec)
2025-04-29 21:12:43
1783
原创 小结: 接口类型和路由优先级
路由协议包括直连(DIRECT)、静态(STATIC)、动态(如OSPF、BGP等),优先级从高到低通常为:DIRECT > OSPF > STATIC > RIP > BGP(具体值依厂商而定)。
2025-04-29 13:23:12
1463
原创 vue3:v-model的原理示例
组件的v-model基于modelValue和,支持多重v-model和自定义修饰符。我们模拟组件为一个简单的 DOM 结构,包含子组件逻辑。javascript// 模拟组件的 v-model// 模拟组件的 props 和 emit${// 模拟组件的 v-model function vModelComponent(element , reactiveRef , propName = 'modelValue' , modifiers = {}) {
2025-04-28 14:19:36
1109
原创 小结: DHCP
DHCP中继客户端和 DHCP Server 不在同一网段,需要通过中继把 DHCP 请求转发过去。交换机/路由器起到中转的作用。常规配置步骤(以华为设备为例):配置 VLAN 接口 IP 地址(给客户端通信)开启 DHCP 中继功能,并指定 DHCP Server 地址是真正提供 IP 地址的 DHCP 服务器 IP。注意事项中继设备(交换机或路由器)必须能路由到 DHCP Server 地址。
2025-04-27 19:38:43
819
原创 uniapp:小程序获取用户信息
*2. **微信授权登录流程。**1. **准备工作。**3. **代码实现。**4. **注意事项。**5. **参考资料。**6. **常见问题。
2025-04-27 19:10:25
4715
原创 小结:BFD
BFD(双向转发检测,Bidirectional Forwarding Detection)是一种快速、轻量级的故障检测机制,用于检测网络中两点之间的连通性。它广泛应用于各种场景。
2025-04-27 18:56:44
1559
原创 小结:STP/RSTP/MSTP
是防止环路的重要技术。交换网络中的环路会导致广播风暴、MAC 地址表震荡,影响正常通信。RSTP 是 STP 的升级版本,解决了 STP 的。是确保业务不中断的核心目标。
2025-04-21 08:31:13
1045
原创 小结:VLAN技术
类别模式/类型功能简述常见用途接口模式三层接口配置IP,具备三层转发能力路由器接口、三层交换二层接口无IP,只转发MAC帧交换机接口、局域网子接口一个物理口下划分多个逻辑口Trunk链路、VLAN间通信链路模式Access只允许1个VLAN连接终端设备Trunk允许多个VLAN,打Tag交换机间或路由器交换机连接Hybrid灵活处理Tag/Untag VLAN帧混合终端与交换连接,灵活部署好的,VLAN中Tag的操作主要指的是。
2025-03-23 22:20:13
873
原创 小结:PIM-SM/DM
特性PIM-DMPIM-SM初始数据流全网泛洪只发到 RP树的类型直接建立 SPT先 RPT,后切换到 SPT是否依赖 RP不依赖依赖 RPprune 机制有,无接收者链路 prune 掉无,显式加入才建立分支应用场景接收者密集接收者稀疏。
2025-03-19 09:47:12
1195
原创 小结:组播分发和PIM协议
组播(Multicast)是一种网络传输方式,它允许数据从一个或多个源发送到多个目标,而不会为每个接收者单独创建数据流,从而提高带宽效率。组播主要用于视频会议、IPTV、在线直播等应用。
2025-03-14 09:31:10
986
原创 vite:Vite Plus愿景
https://www.bilibili.com/video/BV1WERGYDEix/?spm_id_from=333.788.recommend_more_video.6&vd_source=b397f99972af0d7b8ca3eadf5d9a4b46
2025-03-13 13:40:44
1033
原创 小结: IGMP协议
IGMP(Internet Group Management Protocol)是。设置 IGMP 查询器(Querier)定期查询间隔为 60 秒。,但不负责组播路由转发。组播路由协议(如 PIM)负责。,从而决定是否在某个网络接口上转发组播流量。使接口永久加入组播组 239.1.1.1。指定 IGMP 版本(1、2 或 3)组播组,路由器根据 IGMP 消息。在接口上启用 IGMP 监听功能。:IPv6 组播使用的是。,而不是 IGMP。
2025-03-10 10:06:51
1164
原创 小结:`Nx`、`Lerna` 和 `Turborepo`
NxLerna和Turborepo都是前端工程化中用于**管理 Monorepo(多包存储库)**的工具,它们各有优劣,适用于不同的场景。
2025-03-10 09:57:38
1199
原创 AI系统架构
这是AI系统的底层支持,主要涉及计算资源、存储、网络等基础设施。应用层是面向用户的产品和解决方案,通常涉及各个行业的AI落地。模型层主要包含大模型、训练框架和推理优化技术。在AI系统架构中,通常可以分为。
2025-03-07 16:19:21
1004
原创 小结:组播技术
的通信方式,主要用于高效传输需要被多个接收者同时接收的数据,如视频流、在线会议、股票行情推送等。PIM 是目前主流的组播路由协议,分为。组播(Multicast)是一种。
2025-03-07 09:35:18
1021
原创 小结: BGP路由属性,选路原则,路由过滤,团体属性
用于不同自治系统(AS,Autonomous System)之间的路由交换。,每条 BGP 路由都有多个属性,属性用于影响 BGP 的路由决策。BGP(Border Gateway Protocol)是。BGP 遇到多条路由时,会按以下规则选择。的标签,后续可以用来进行策略匹配。BGP 团体属性是一种。BGP 路由过滤用于。
2025-03-05 11:04:35
1179
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅