0

当使用 Enhancer 在 CGLib 中创建代理时,您可以调用.setNamingPolicy(NamingPolicy n)以将代理类命名策略更改为 CGLib 默认值以外的策略。使用 ProxyFactory 时,有没有办法在 Javassist 中做类似的事情?

4

2 回答 2

2

查看ProxyFactory的代码,我会说它至少不可能开箱即用:

private static synchronized String makeProxyName(String classname) {
    return classname + "_$$_javassist_" + counter++;
}
于 2012-02-13T21:51:34.933 回答
1

在 GitHub 上,看起来大约 6 个月前,他们在 ProxyFactory中添加了一个 UniqueName 类型的公共字段,您可以替换它来更改命名策略。首次提出问题时,此功能不可用。

于 2013-11-12T19:04:20.353 回答