2011-01-23 3 views
5

Come si crea un proxy di un class in java. Creano il proxy in base alle necessità o lo creano e lo mantengono in giro per sempre.Come creare un proxy in java

+11

Chi è "loro" ?? –

+0

sì, di quale contesto stai parlando? – hvgotcodes

+0

Intendi l'oggetto proxy o la classe proxy? – maaartinus

risposta

12

È possibile creare i proxy in due modi fondamentali:

  • utilizzando il meccanismo JDK, per l'interfaccia. Dai un'occhiata a java.lang.reflect.Proxy.
  • utilizzando una libreria di generazione/manipolazione di codice byte, su una classe concreta. Date un'occhiata a cglib e javassist

Apache ha una bella utility: commons-proxy. Comprende molti meccanismi e framework per la creazione di proxy.

Questo è tutto sui proxy dinamici, ad esempio quelli creati in fase di esecuzione. Per i proxy statici - vedere wikipedia about the proxy pattern

Nota che non stai facendo un proxy di una classe - stai facendo un proxy di un oggetto.

3

Sono d'accordo con i commenti che la domanda è un po 'vaga. Tuttavia, ti suggerirei di guardare alcune delle strutture di derisione come easymock e mockito. Il loro codice sorgente è disponibile e la loro funzionalità principale è la creazione di proxy di classe e interfacce. Quindi sono buoni esempi concreti di come fare per creare dei proxy.