请问能不能用拦截器(如JBOSS AOP框架中提供的Interceptor)拦截class文件中特定方法的调用?也就是自己编写拦截器并绑定到class文件某些方法上,可行吗?除了AOP还有没有其他能拦截class文件特定方法调用的办法?谢谢!

解决方案 »

  1.   

    我只用过spring提供的代理完成拦截,你说的这个功能可以实现,比如用AroundAdvice就可以控制方法的调用,甚至根据情况决定到底方法到底是不是被调用。
      

  2.   

    我只用过spring提供的代理完成拦截,你说的这个功能可以实现,比如用AroundAdvice就可以控制方法的调用,甚至根据情况决定到底方法到底是不是被调用。
      

  3.   

    不用SPRING用JBOSS AOP框架中提供的Interceptor来实现行吗?我在ECLIPSE上装了JBOSS的AOP插件,通过它可以为已知
    源码的类的某些方法调用添加拦截器,一调用这些方法马上可以拦截到,但是好像不能对CLASS文件添加拦截器,有什么办法吗?
      

  4.   

    实现的原理都是一样的,通过代理实现,我没有用过jboss.
    http://www2.matrix.org.cn/resource/article/2005-08-30/JBOSS_43677.html 你看一下这篇文章
    仅仅做参考!!!!
      

  5.   

    这篇文章我已经看过,里面是要用到源码的,究竟怎样才能对CLASS文件添加拦截器呢?谢谢!
      

  6.   

    譬如我的CLASS文件中有MAIN函数,里面调用若干个其他函数,我就想在它调用某个函数之前拦截,并作出判断,成功的话就让它继续执行,否则抛出异常。我就是不知道可不可以拦截CLASS文件某些方法的调用,谢谢!
      

  7.   

    我不太清楚JBoss提供的AOP的拦截是怎么实现,我估计应该行,你试试吧。
    还是觉得如果你有大量这样的需求的话应该看看spring的,那样你可以完全根据需要拦截的方法名拦截所有类的该方法。
      

  8.   

    我对SRPING不熟悉,SPRING是不是基于WEB的?我的程序不需要WEB的支持。
    有什么推荐的学习资料呢?关于SPRING中的拦截。谢谢!
      

  9.   

    spring用来耦合任何需要依赖的java对象,不一定用来做web开发。纯做数据库访问,使用spring开发也会节省时间提高效率。