我想切一下dwr.jar中的一个类,用来将前台传入给dwr的参数打印出来。
请问这种需求spring aop能实现么,我试的时候,会出没有加bean的错误,也就是spring-aop只能对beans中的bean进行切面?而不能切外部的类,而必须加到bean中?
而且我实验的时候,spring-aop中配置好了的切点,只有通过spring的getBean引入(或类似)的方法引入的对象才能触发切点。
这一点太不灵活啦。
有高手能做来不。
另外,有通过其它方法实现对jar包中的某个类(没有源代码)进行监控的么?
spring的代理实现分2种情况:1.如果被代理类实现了一个或多个接口,此时使用jdk自带的代理类也就是"java.lang.reflect.Proxy"来生成代理类,此时当我们从bean工厂取出这个bean时(即使用getBean(**)方法)得到的bean并不是原来定义的类的对象,而是被代理后的对象,这个对象实现了被代理类所实现的接口,所以可以被当作"接口实例"对待.2.当被代理没有实现任何接口,此时使用cglib来生成代理类,这个代理类是被代理类的子类,所以可以被当作定义时的类的对象对待.
你出现这种情况很可能是因为对象已经被代理,而程序中没有用代理后正确的类型来接收这个代理对象造成的.
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。