我的印象是每當一個類實現一個接口,就會創建基於JDK的代理。基於CGLib的代理是通過類實現接口創建的
我有一個bean,它實現了與prototype scope
的接口,這個接口被注入到一個具有singleton
範圍的bean中。我嘗試使用proxyMode = ScopedProxyMode.INTERFACES
創建JDK代理是正確的,但是當我厭倦proxyMode = ScopedProxyMode.TARGET_CLASS
時,即使我的bean實現了一個接口,也會創建基於CGLIB的代理。
時
proxyMode = ScopedProxyMode.TARGET_CLASS
和
proxyMode = ScopedProxyMode.INTERFACES
它們之間有什麼區別,會發生什麼?何時使用哪一個?
我還有一個問題是,將原型bean注入單例bean的正確方法是什麼?
這就是你告訴框架要做的是總是創建基於類的代理以及基於cglib的代理。 –