ByteBuddy - 重新定义给定包中的所有类

时间:2021-01-21 08:38:46

标签: java spring-boot byte-buddy

我有一个名为 com.company.beans 的包。 我想做的是为这个包中的每个类 upperCasetrim 所有类型为 String 的字段。 我看过这篇文章Using Bytebuddy to intercept setter 这似乎是我想做的事情的一个很好的解决方案。

这是我试图重新定义的一段代码:

 bb.subclass(BaseUser.class) // how to specify my package ? 
            .method(isDeclaredBy(BaseUser.class).and(isSetter()))
            .intercept(MethodDelegation.to(interceptor))
            .make()
            .load(BaseUser.class.getClassLoader(), ClassLoadingStrategy.Default.WRAPPER);

如何指定给定包中的所有类? 另外,我正在使用弹簧靴。我应该把我的 ByteBuddy 配置放在哪里?

谢谢。

1 个答案:

答案 0 :(得分:0)

有一些库可以用于扫描类路径,例如 Class Graph,您可以将其用于此目的。 Byte Buddy 中没有任何内容,因为它被视为不同的域。

相关问题