锁定老帖子 主题:AOP的实现机制
该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2011-10-19
支持楼主,楼主很有诚心
|
|
返回顶楼 | |
发表时间:2011-10-19
太好了,特别适用!
|
|
返回顶楼 | |
发表时间:2011-10-20
楼主的整理很不错,
甚至可以看到Without EJB中“基于AOP概念的声明性中间件”章节的影子. |
|
返回顶楼 | |
发表时间:2011-10-20
最后修改:2011-10-20
kakaluyi 写道 ProxyGenerator.generateProxyClass()的方法比放射还要更高级一点,这个是动态生成代理类的方法,而不是在运行时候动态生成实例,这种flexible的方式很值得一些需要运行动态生成代码的项目学习。
的确是动态生成代理类的方法,但是也动态生成了实例。以下是该方法的源码,详情参见原文。 //把handler传入构造方法生成实例 return (Object) cons.newInstance(new Object[] { h }); |
|
返回顶楼 | |
发表时间:2011-10-20
写的很好,可以作为学习资料,感谢
|
|
返回顶楼 | |
发表时间:2011-10-20
不错的资料,总结的挺好
看得出用了不少心思,值得推荐的文章 |
|
返回顶楼 | |
发表时间:2011-10-20
最后修改:2011-10-20
//循环生成方法体代码(省略) 13.//方法体里生成调用InvocationHandler的invoke方法代码。(此处有所省略) 14.this.cp.getInterfaceMethodRef("InvocationHandler", "invoke", "Object; Method; Object;") 15. 16.//将生成的字节码,写入硬盘 17.localFileOutputStream = new FileOutputStream(ProxyGenerator.access$000(this.val$name) + ".class"); 18.localFileOutputStream.write(this.val$classFile); 有个问题弄不清楚 .//将生成的字节码,写入硬盘 我怎么就找不到这个生成动态代理的文件 应该已经写到磁盘上了 bin目录下面为什么没有这个文件呢 |
|
返回顶楼 | |
发表时间:2011-10-20
最后修改:2011-10-20
刚在代码中找到了这个
为什么找不到生成的文件????? |
|
返回顶楼 | |
发表时间:2011-10-20
写的真不错!加精了!
|
|
返回顶楼 | |
发表时间:2011-10-20
楼主 牛逼
|
|
返回顶楼 | |