微光实验室 · 博客归档
博客 第19页
记录技术探索与工程思考,共 731 篇文章。
实现简易IoC-02:无IoC与AOP场景下实现业务
在没有使用Spring的情况下,手动实现业务逻辑分层,包括DAO层、Service层和Controller层,展示传统开发方式的依赖管理问题。
大数据-249 离线数仓 - DWD层建表与脚本 DWS层建表与脚本
订单表是周期性事实表,为保留订单状态可使用拉链表处理;订单产品表为普通事实表。订单状态包括:-3用户拒收、-2未付款订单、-1用户取消、0等待发货、1配送中、2用户确认收货。订单从创建到完成有时间限制,业务上不允许订单一个月后状态仍变化。
实现简易IoC-01:Servlet介绍与基本代码编写
手把手教你实现简易Spring IoC容器,第一部分介绍Servlet的基本概念、特点和工作原理,并编写第一个Servlet程序。
大数据-248 离线数仓 - 维表:商品分类表、地域组织表、商品信息表
文章首先确定事实表与维表的区分:绿色表示事实表,灰色表示维表。维表处理方式根据数据量选择不同策略——小表采用每日快照表(如产品分类表、商家店铺表、商家地域组织表、支付方式表),大表则使用拉链表(如产品信息表)。
FastDFS 架构详解:Storage/Tracker/Group 设计与实战
FastDFS 核心架构详解:Tracker Server、Storage Server、Group 分组机制。
Spring概述:发展历史与核心思想IoC、AOP
全面介绍Spring框架的基本概念、发展历程,从EJB到Spring的演进,详细讲解Spring的核心思想IoC控制反转和AOP面向切面编程。
大数据-247 离线数仓 - Hive 拉链表实战:订单历史状态增量刷新
Hive 拉链表实战教程,讲解订单历史状态增量刷新、ODS 到 DWD 分层,结合 2020 年订单状态变更案例,说明拉链表如何处理"记录会变化、又需要保留历史"的业务对象。
手写ORM框架4:框架优化与DefaultSqlSession代理实现
对手写ORM框架进行优化,重点讲解DefaultSqlSession中getMapper方法的实现,利用JDK动态代理创建Mapper接口的代理对象。
大数据-246 离线数仓 - Hive 拉链表实战:初始化、增量更新、回滚脚本
离线数仓建模方式,实战讲解 Hive 拉链表实现方案,覆盖初始化装载、每日增量更新、历史版本闭链、Shell 调度脚本以及回滚恢复逻辑。
FastDFS 6.15.0+Nginx 动态模块实战:源码编译到访问,从0到1详细配置流程
FastDFS 6.15.0 源码编译安装与 Nginx fastdfs-nginx-module 配置完整指南。
手写ORM框架3:SqlSession、Executor工作原理详解
深入剖析手写ORM框架中SqlSession和Executor的工作原理,详细讲解SqlSessionFactoryBuilder、DefaultSqlSession、SimpleExecutor的实现机制。
大数据-245 离线数仓 - Hive 拉链表入门实战:缓慢变化维 SCD 类型、建表加载
缓慢变化维(SCD,Slowly Changing Dimensions)展开,系统梳理 SCD Type 0、1、2、3、4、6 的核心差异,并结合 Hive 离线数仓场景说明快照表与拉链表的适用边界。
手写ORM框架2:Resources、MappedStatement、XMLBuilder实现
本文手把手教你手写ORM框架,详细介绍Resources、MappedStatement、XMLBuilder等核心组件的实现,包括配置文件解析、映射文件处理等关键步骤。
FastDFS 从单机到分布式文件存储:实战与架构取舍
FastDFS 分布式文件系统架构详解,从单机到分布式的演进路径。 FastDFS(Fast Distributed File System)是一款开源的分布式文件存储系统,采用C语言开发,具有轻量级、高性能的特点。
深入浅出 MyBatis - 手写ORM框架1 测试JDBC问题 解决方案
手写ORM框架系列第一篇,介绍传统JDBC开发的问题和缺点,以及ORM框架的设计思路和解决方案。
大数据-244 离线数仓 - Hive ODS 层建表与分区加载实战
通过 DataX 将 MySQL 数据同步到 HDFS 指定目录,再在 Hive 中创建 ODS 外部表,统一使用 dt 字符串分区。允许在7天内快速查询原始交易记录体现ods层什么核心特点。
大数据-243 离线数仓 - 实战电商核心交易增量导入(DataX - HDFS - Hive 分区)
场景:电商核心交易三张表做每日增量,落地离线数仓 ODS,按 dt 分区 结论:DataX 用 MySQLReader + HDFSWriter,按时间字段抽取,HDFS 目录分区化,Hive 只做分区挂载 产出:
深入浅出 MyBatis - 用到的设计模式 源码剖析 代理设计模式
详细介绍代理设计模式的概念、分类和MyBatis中的具体体现,包括静态代理和动态代理的代码实现,以及MapperProxy的源码分析。
大数据-242 离线数仓 - DataX 实战:MySQL 全量/增量导入 HDFS + Hive 分区
DataX(mysqlreader + hdfswriter)将 MySQL 电商业务库按"全量/增量"两类策略抽取到 HDFS,并在 Hive 中以 dt=yyyy-mm-dd 进行分区管理。
Neo4j + Spring Boot 实战:从 Driver 到 Repository 的整合与踩坑
Spring Boot 整合 Neo4j 完整指南:Java Driver、Neo4jTemplate、Repository 实战。