为什么你需要补这门课

很多写 Java 的人对注解的理解,停留在“加个 @Override 防止重写错”或者“贴个 @Autowired 就能注入”的程度。你真问他注解到底是个什么类型、元注解怎么配置、运行时怎么通过反射拿到注解里的值,他就开始含糊其辞。这就是典型的能力缺口:天天用别人写好的框架,却连框架的底座是怎么拼的都没摸过。这门课不跟你扯大道理,直接从零开始手写一个基于注解的 DAO 框架。它解决的核心问题只有一个:让你彻底搞懂框架里的注解不是魔法,而是通过反射在运行时读取元数据、拼装 SQL 的普通代码。如果你一直觉得 Spring 和 MyBatis 的内部原理像黑盒,这门课就是撬开黑盒的那根棍子。

适合什么基础与学习顺序建议

这门课不适合连 Java 基本语法都没写熟的人。你得有扎实的面向对象基础,知道反射 API 怎么用,最好平时用过 MyBatis 或者 Hibernate,被各种 @Table、@Id 注解“伺候”过。带着“平时用爽了但不知道为什么”的困惑来补课,效果最好。看的时候别从头到尾平铺直叙地刷,建议先看前半部分关于自定义注解和反射获取值的几节,彻底弄明白 @Target、@Retention 怎么配,以及怎么用 getDeclaredAnnotations 把类和方法上的注解值扒出来。这部分是原理地基,地基没打牢,后面写代码全是抄。地基看完,再进入后半部分的 DAO 框架实战,从环境准备到表名获取,再到字段解析和 SQL 拼接,一步步跟着把代码敲出来。

学完能独立做什么与资料怎么配合练习

把这套流程走完,你不应该只是“看懂了”,而是要能独立干这两件事:第一,给自己写的任何业务代码自定义注解,并在运行时通过反射提取注解参数来做逻辑控制;第二,抛开任何第三方 ORM 框架,自己写一套能读取实体类注解、自动拼装查询 SQL 并从 MySQL 拿数据打印到控制台的简易 DAO 工具。看视频资料时,别光眼睛过一遍就完事。正确的练习方式是:看原理讲解时先暂停,自己试着定义注解,再对比视频里的写法;看 DAO 实战篇时,先把视频当说明书,自己建库建表、写实体类、尝试用反射拼 SQL,卡在哪一步再去翻对应的章节。资料里的代码演示是用来给你纠错的,不是用来复制粘贴的。手写框架这种事,自己不敲一遍键盘,反射和注解的坑你永远踩不到,能力缺口也就永远补不上。

课程目录

1 01手写框架之注解篇-注解的简介 (01:25)
2 02手写框架之注解篇-java自带常用注解 (05:56)
3 03手写框架之注解篇-注解的分类以及常见的第三方注解 (04:17)
4 04手写框架之注解篇-自定义注解的方式和参数说明 (07:36)
5 05手写框架之注解篇-注解的代码演示以及获取类上面的注解值 (16:43)
6 06手写框架之注解篇-注解的方法上面获取对应值 (08:55)
7 07手写DAO框架注解篇-环境准备 (14:52)
8 08手写DAO框架注解篇-注解获取数据库table的名称 (12:42)
9 09手写DAO框架注解篇-获取字段并且通过反射获取值拼接sq (11:36)
10 10手写DAO框架注解篇-实现注解中的in方法实现 (09:03)
11 11手写DAO框架注解篇-实现读取mysql数据显示到控制台 (19:14)