![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
纯手写
guandezhi
这个作者很懒,什么都没留下…
展开
-
纯手写mybatis(注解版)
纯手写mybatis(注解版)实现思路:1.自定义注解2.利用动态代理操作目标对象3.利用反射绑定参数4.执行SQL语句项目结构图定义查询和插入接口,这里采用注解方式。定义一个SqlSession,采用动态代理来生成UserMapper接口的代理对象,待会要传入InvocationHandler的实现类。定义UserMapperInvocationHandler实现Invo...原创 2019-01-17 17:12:48 · 6625 阅读 · 10 评论 -
纯手写springMVC(基础版)
实现思路:1.定义程序入口GdzDispatcherServlet2.加载配置文件application.properties3.扫描scanPackege包下所有的类4.初始化包下的所有实例并保存到ConcurrentHashMap的IOC容器中5.注入类的属性6.将url和方法绑定,并保存到ConcurrentHashMap的HandlerMapping中项目结构目录程序的入...原创 2019-01-20 23:26:05 · 366 阅读 · 1 评论 -
纯手写lombok插件(试玩版)
实现思路:1.自定义注解GdzData2.利用javassist字节码技术创建CtClass容器3.给ctClass对象添加get,set方法4.更新之前的class文件lombok插件可以简化代码,大大提高JavaBean中方法的执行效率。lombok实现原理如下图:首先是项目的源代码文件,在经过编译处理以后,lombok会使用自己的抽象语法树去进行注解的匹配,如果在项目中的某一个...原创 2019-01-21 17:52:49 · 1464 阅读 · 6 评论 -
纯手写mybatis(xml版)
实现思路:1.读取并解析mapper.xml配置文件,将mapper.xml信息转化为java对象。2.利用动态代理操作目标对象3.利用反射绑定参数4.执行SQL语句项目结构图:先看一下UserMapper.xml这是查询接口这是xml解析工具类,将UserMapper.xml信息转化为java对象存储解析xml配置文件读取项目resources下面的配置文件将x...原创 2019-01-29 12:04:45 · 1059 阅读 · 2 评论