发表于: 2017-08-30 19:05:10
1 1103
今天完成的:
准备小课堂,过了一遍动态代理
收获:
1.通过Proxy.getProxyInstance()获取代理对象
2.代理对象调用方法,跳入InvocationHandler的invoke方法,执行操作
3.返回结果对象
在第一步和第二步/第二步和第三步之间可以做很多事。自定义类实现getProxyInstance()的第三个参数InvocationHandler接口。再通过自定义类的构造方法传入一个对象。对对象的处理可以封装在另一个自定义类中,在该类中进行一些操作比如通过反射为字段注入属性等等。模拟了一个乞丐版的@Autowired注解
4.InvocationHandler的invoke方法中执行method.invoke的返回值。和你获得的代理对象没有关系,如果你的代理对象部分代码执行速度比你before/after打印的日志稍快或稍慢,可能在控制台打印的日志会出现不按顺序执行的错觉。和aop一样,只要不return,方法的返回值就不会返回,log也无法打出来。
问题:
闹心,据说第一次demo不给过
计划:
等前端侧接口
进度:
9.1 demo
http://task.ptteng.com/zentao/project-burn-277.html
评论