2011-01-23 17 views
5

Cómo crean un proxy de class en java. ¿Crean el proxy según sea necesario o lo crean y lo tienen para siempre?Cómo crear proxy en java

+11

¿Quién es "ellos"? –

+0

sí, ¿de qué contexto estás hablando? – hvgotcodes

+0

¿Te refieres al objeto proxy o la clase proxy? – maaartinus

Respuesta

12

Puede crear proxies de dos formas básicas:

  • utilizando el mecanismo de JDK, por la interfaz. Eche un vistazo al java.lang.reflect.Proxy.
  • usando una biblioteca de generación/manipulación de código byte, en una clase concreta. Echar un vistazo a cglib y javassist

Apache tiene una utilidad: commons-proxy. Envuelve muchos mecanismos y marcos para crear proxies.

Esto se trata de proxies dinámicos, es decir, aquellos creados en tiempo de ejecución. Para proxies estáticos: consulte wikipedia about the proxy pattern

Tenga en cuenta que no está haciendo un proxy de una clase: está haciendo un proxy de un objeto.

3

Estoy de acuerdo con los comentarios de que la pregunta es un poco vaga. Sin embargo, te sugiero que veas algunos de los frameworks burlones como easymock y mockito. Su código fuente está disponible y su funcionalidad principal es crear proxies de clase e interfaces. Entonces son buenos ejemplos concretos de cómo crear proxies.