如何在java中创建代理
他们如何在java中创建一个class
代理。 他们是否根据需要创建代理,或者他们创建代理并永远拥有代理。
您可以通过两种基本方式创建代理:
- 使用JDK机制,通过接口。 看看
java.lang.reflect.Proxy
。 - 在一个具体的类上使用一些字节码生成/操作库。 看看cglib和javassist
Apache有一个很好的实用程序: commons-proxy 。 它包含了许多用于创建代理的机制和框架。
这完全是关于动态代理 – 即在运行时创建的代理。 对于静态代理 – 请参阅维基百科有关代理模式的信息
请注意,您不是在创建类的代理 – 您正在创建对象的代理。
我同意这个问题有点模糊的评论。 但是,我建议你看看一些模拟框架,比如easymock和mockito。 他们的源代码是可用的,他们的核心function是创建类和接口的代理。 因此,它们是如何创建代理的良好具体示例。
- Java JTextPane JScrollPane显示问题
- Camel + Jackson:为所有反序列化注册一个模块
- 使用Jersey / JAXB / Jackson的Java.util.Map到JSON对象
- 未捕获并忽略ArrayIndexOutOfBoundsException
- 如何将数据库查询映射到Object ?
- 我可以在Discriminated Entity Hierarchy的子类上使用CompositeId吗?
- Springboot REST应用程序应该接受并生成XML和JSON
- 如何在不同端口上运行的tomcat中部署多个Web应用程序?
- 在生产Java服务器中打开GC日志记录是否常见?