论坛首页 Java企业应用论坛

aspectJ动态编入问题

浏览 2482 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-12-14  
  我最近在做aop的内容。但是碰到了一点问题。希望能够得到大家的帮助。
  我使用aop的方式是要求动态的weave in任何一个我指定的class中的方法(weave in性能测试的代码). 而weave in之后,当程序运行到这个方法是就能的到相关的数据。
  现在我面对的问题是:
  1) 不能使用spring aop或naning aop的默认方法: “proxyFactory.getProxy()来获得aop的class的proxy实例是行不通的。” 因为我无法预知要编入的class。并且每个类都是使用new来创建的。(我个人认为只有改变classloader或者更改java字节码才有可能实现)。
  2) 项目要求使用aspectJ,但是就我平时使用aspectJ的方式大多为Ant打包时编入,或者是load-time时调用aop.xml。我看了很久的aspectj in action我没有发现有任何的方式可以实现在runtime时动态编入任何一个class。

希望大家给我一个解决这个问题的想法,谢谢!
   发表时间:2007-12-14  
应该要使用bytecode enhanced方式!
0 请登录后投票
   发表时间:2007-12-14  
惊鸿逝水 写道
应该要使用bytecode enhanced方式!
谢谢你的回复,能具体点吗?我知道Javassist可以实现这一功能。可是项目要求使用aspectJ。我不记得aspectJ有这个功能。
0 请登录后投票
   发表时间:2007-12-16  
如果是要进行性能监控,建议你可以使用我的项目jwebap。它主要针对j2ee应用(EJB & Web Module),部署很简单,对系统无任何侵入,它可以对方法,http请求,jdbc调用进行监控,可以过滤时间,可以跟踪栈信息。可以配置需要监控的包名等等。

你可以访问:jwebap.sourceforge.net,doc目录下有中文文档
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics