如何在Java中拦截对象创建

时间:2012-01-02 23:25:06

标签: java aop cglib

我有一点奇怪的要求。我猜。

我想使用我创建的自定义代理来装饰实现特定接口的所有对象,但我需要对代码本身透明。可以包含在构建过​​程中的东西将是完美的。

我在AOP中思考但没有看到这样的能力,我正在寻找想法,甚至是疯狂的想法。我正在考虑在编译之后更改源代码并重新编译它至少替换直接调用new(我想这不会通过反射创建对象但是会是一个很好的开始)但是我可以想到一百万个问题这可能会打破我的主要目标,即使这种仪器尽可能透明。

你们中有些人对这种不寻常的事情有过一些经验吗?

此致

1 个答案:

答案 0 :(得分:3)

使用注释来修饰类并使用注释处理来注入所需的代码。

fyi,Hibernate采用这种方法