Was ist im Fall des Proxy-Entwurfsmusters der Unterschied zwischen dem dynamischen Proxy von JDK und den APIs zur dynamischen Codegenerierung von Drittanbietern wie CGLib ? Was ist der Unterschied zwischen der Verwendung beider Ansätze und wann sollte man einander