Was ist CGLIB und wie steht es mit Spring? Müssen wir die Verwendung von CGLIB explizit bei der Verwendung von Spring Framework definieren?Was ist CGLIB im Spring Framework?
Antwort
Ref Frühling docs. Was ist CGLIB & Wie ist es mit Frühling verbunden?
CGLIB ist eine Codegenerationsbibliothek. Spring verwendet CGLIB, um Proxys zu generieren.
Frühling AOP standardmäßig mit Standard-JDK dynamische Proxies für AOP Proxies. Dies ermöglicht, dass jede Schnittstelle (oder jeder Satz von Schnittstellen) proxiiert werden kann.
Ja, Sie müssen Frühling sagen, um CGLIB-basierte Proxies explizit zu verwenden.
Durch xml:
<aop:aspectj-autoproxy proxy-target-class="true"/>
Proxy-Ziel-Klasse Eigenschaft auf true gesetzt wird CGLIB basiertes proxying führt in der Tat sein.
Durch Annotation:
@Configuration
@EnableAspectJAutoProxy(proxyTargetClass=true)
public class AppConfig {
// ...
}
Es besteht keine Notwendigkeit CGLIB zu Ihrem Classpath hinzuzufügen. Ab Frühjahr 3.2 wird CGLIB neu verpackt und in der Spring-Core-JAR enthalten.
Sie können sich auch this anschauen.