如何拦截java代码 java拦截响应( 四 )


aspectj基于AOP实现的拦截器功能十分强大,具体详解请参考spring网站的文档 。
java如何对方法进行拦截呢如果使用asm需要知道
System.out.println("hello world");
return;
的字节码是
getstatic System.out
ldc #? // 从常量池取"hello world"字符串
invokevirtual java/io/PrintStream.println(Ljava/lang/Object)
return

于是乎重写一份方法即可 。

用javaassist会方便一些 。只需要java知识 。直接将方法设置为
{{
System.out.println("hello world");
}}
即可

字节码类库 , 特别是javaassist这种简单易懂的,网上资料很多 , 花5分钟看下就行了 。

另外,如果是非静态方法也可以试试动态代理,通过接口访问可用自带的Proxy做,否则就用cglib好了 。
如何拦截java代码的介绍就聊到这里吧 , 感谢你花时间阅读本站内容 , 更多关于java拦截响应、如何拦截java代码的信息别忘了在本站进行查找喔 。

推荐阅读