Ich verstehe, wie Sie dynamische Proxies in Java verwenden, aber was ich nicht verstehe, ist, wie die VM tatsächlich einen dynamischen Proxy erstellt. Wird Bytecode erzeugt und geladen? Oder etwas anderes? Vielen Dank.Wie funktioniert der dynamische Proxy von Java?
Antwort
zumindest für Sun-Implementierung, wenn Sie auf den Quellcode von java.lang.reflect.Proxy
aussehen werden Sie sehen, dass ja, es den Bytecode erzeugt on-the-fly (mit der Klasse sun.misc.ProxyGenerator
) .
Ich schlage vor, dass Sie Dynamic Proxy Classes lesen:
Die Proxy.getProxyClass Methode gibt die java.lang.Class Objekt für einen Proxy- Klasse einen Klassenlader gegeben und eine Reihe von Schnittstellen. Die Proxy-Klasse wird in der angegebenen Klasse loader definiert und implementiert alle von gelieferten Schnittstellen. Wenn eine Proxy-Klasse für die gleiche Permutation der Schnittstellen bereits in der Klasse loader definiert wurde, wird die vorhandene Proxy-Klasse zurückgegeben; andernfalls wird ein Proxy Klasse für diese Schnittstellen dynamisch generiert und in der Klassenlader definiert. [Hervorhebung von mir]
- 1. Warum funktioniert der dynamische JDK-Proxy nur mit Interfaces?
- 2. Nginx dynamische Proxy-Konfiguration
- 3. Burg dynamische Proxy-Erstellung
- 4. RMIs dynamische Proxy-Stub-Implementierung
- 5. Wie funktioniert der dynamische jQuery-Inhalt?
- 6. Java-SOCKS-Proxy
- 7. Java HTTP Proxy
- 8. Java-HTTP-Proxy-Server
- 9. Wie funktioniert der Java-Operator?
- 10. Spring AOP Proxy funktioniert nicht wie erwartet
- 11. Javassist: wie Proxy-Proxy erstellen?
- 12. Wie benutze ich Java-Proxy in Scala
- 13. Java: Datagram und Proxy (Firewall)
- 14. Wie wechsle ich diesen Proxy zur Verwendung der Proxy-Authentifizierung?
- 15. Wie man dynamische Strukturen in Java bestellt
- 16. Dynamische Uhr in Java
- 17. Json Serialisieren JDK Dynamische Proxy mit Jackson Bibliothek
- 18. Hinzufügen von Formularelement stoppt dynamische Textfeld funktioniert
- 19. Dynamische JAVA-Listentyp
- 20. Wie lade ich die Proxy-Klasse aus der Proxy-Klasse?
- 21. Goutte/Guzzle Proxy funktioniert nicht
- 22. Dynamische Vererbung in Java
- 23. Java aufrufen dynamisch Methode, die (durch die dynamische Proxy) dynamisch verbunden ist an einem Objekt
- 24. Funktioniert der Operator Java & = & & &&?
- 25. dynamische Steuerung von Panel funktioniert nicht
- 26. NodeJS & Nginx Proxy funktioniert nicht
- 27. Dynamische Array-Deklaration in Java
- 28. http-Post durch Proxy funktioniert nicht
- 29. Java dynamische Speicherzuweisung?
- 30. Proxy für Selen RC-Treiber in Java
James, du bist wie ein Java-Guru. Haben Sie uns gerade mit dieser Frage getestet? – erickson
Haha. Ich kenne die Java-Sprache, aber ich bin kein echter VM-Experte. :) –