别只会调 API,手写一遍反射和注解才算懂框架
很多转岗或刚背完八股的开发者,平时用 MyBatis 或 Spring 很顺,但一旦被问到“框架底层是怎么把数据库表和实体类映射起来的”,往往只能背出“动态代理”几个字,真让自己上手写就卡壳。这门课解决的就是这种“知其然而不知其所以然”的能力缺口。它不带你做业务增删改查,而是逼着你用最基础的 Java 反射、注解和 XML 解析,从零搓出一个自定义的 ORM 和 MVC 核心骨架。如果你连反射获取私有字段、动态修改参数值都写不利索,或者自定义注解的元注解怎么配总是记混,这门课就是给你补地基的。适合有一定 Java 基础、能写简单 JDBC 代码,但没真正拆解过框架源码的学习者。
先啃透反射与解析,再碰注解与工厂
看这套资料别跳着看,前面的基础复习是后面能看懂的前提。建议先重点啃开篇的反射复习部分,把 Class 对象获取、Constructor、Field、Method 的核心 API 敲熟练,这是整个自定义框架的引擎。接着看 XML 的 DTD 定义和应用,理解外部配置文件怎么约束格式并被程序读取。这两块稳了,再进入后半段的 ORM 核心实战。后半段重点是注解的声明与解析,你要搞清楚怎么定义一个表映射注解、怎么用反射把实体类上的注解信息读出来,最后跟着视频把 Session 工厂搭出来。配套练习方面,不要光看视频演示,务必自己建个空工程,跟着每一节的进度把工具类一点点敲出来,卡住了再回去对应章节找解法。
学完能脱手做什么
看完这套资料,你应该能独立写出一套小型的 ORM 映射工具:自己定义几个核心注解标记实体类和字段,写一个解析器扫描这些注解,通过反射自动拼装出 SQL 语句,最后用工厂模式封装出统一的执行入口。这意味着你以后看 MyBatis 源码时,不会再觉得底层像黑盒,至少能看懂它在注册 Mapper、解析注解、生成代理对象时到底在干什么。面试遇到“框架底层原理”或“反射实际应用”的追问,你能拿自己写过的这套逻辑去拆解回答,而不是背网文。资料包里的源码线索主要用来比对思路,如果你自己敲出来的解析逻辑跑不通,再去对照资料里的实现细节查漏补缺,千万别直接复制粘贴,那样等于白学。
课程目录
1 自定义框知识点与java反射复习2 (19:14) 2 自定义框知识点与java反射复习1 (24:42) 3 自定义框知识点与java反射复习3 (21:08) 4 Xml的dtd定义及应用1 (28:37) 5 Xml的dtd定义及应用2 (25:03) 6 Xml的dtd定义及应用3 (28:01) 7 xml解析与java反射应用1 (28:10) 8 xml解析与java反射应用2 (29:11) 9 自定义orm框架之注解声明与使用1 (20:43) 10 自定义orm框架之注解声明与使用2 (17:05) 11 自定义orm框架之注解声明与使用3 (26:33) 12 自定义orm框架之注解解析与session工厂1 (29:46) 13 自定义orm框架之注解解析与session工厂2 (28:09) 14 自定义orm框架之注解解析与session工厂3 (25:50) 15 自定义orm框架之泛型定义与查询功能1 (24:12) 16 自定义orm框架之泛型定义与查询功能2 (25:51) 17 自定义orm框架之泛型定义与查询功能3 (24:59) 18 自定义orm框架之插入功能 (35:32) 19 自定义orm框架之crud功能1 (26:39) 20 自定义orm框架之crud功能2 (30:25) 21 自定义orm框架之crud功能3 (28:41) 22 自定义mvc之核心控制器(一)1 (30:49) 23 自定义mvc之核心控制器(一)2 (27:40) 24 自定义mvc之核心控制器(一)3 (23:21) 25 自定义mvc之请求路径-业务控制器类的注册和解析1 (26:37) 26 自定义mvc之请求路径-业务控制器类的注册和解析2 (27:42) 27 自定义mvc之请求路径-业务控制器类的注册和解析3 (26:12) 28 自定义mvc之核心控制器(二)1 (18:02) 29 自定义mvc之核心控制器(二)2 (19:35) 30 自定义mvc之核心控制器(三)与应用-404页面1 (24:00) 31 自定义mvc之核心控制器(三)与应用-404页面2 (30:18) 32 mvc Orm融合之form注入1 (25:37) 33 mvc Orm融合之form注入2 (25:02) 34 mvc Orm融合之用户注册与文件上传 (28:41) 35 ajax文件上传 (24:22) 36 整合上传文件1 (29:39) 37 mvc Api接口服务实现1 (27:59) 38 整合上传文件2 (28:45) 39 mvc Api接口服务实现2 (28:48) 40 mvc Api接口服务实现3 (19:45) 41 mvc Api接口服务实现4 (26:21) 42 mvc Jquery Api请求1 (24:48) 43 mvc Jquery Api请求2 (18:24) 44 mvc 引入bootstrap1 (21:35) 45 mvc 引入bootstrap2 (20:13) 46 mvc 分页 1 实现分页思想 (04:55) 47 mvc 分页 2 1(dao层实现分页) (29:58) 48 mvc 分页 2 2(page类设计与控制器) (24:48) 49 mvc 分页 2 3(bootstrap与jstl标签) (23:04)




