Estoy jugando con Spring AOP.Primavera AOP crea bean extra
Aquí es una clase simple
public class CModel extends Car {
private double torqueMeasure = 1;
public CModel() {
System.out.println(" C-Model constructor");
}
}
Y Resorte configuración es como esto
<aop:config>
<aop:aspect ref="audit">
<aop:before pointcut="execution(* com.test.main..*(..))" method="firstControl"/>
...
</aop:aspect>
</aop:config>
Ok ahora; cuando agrego aop: config e intercepto CModel, Spring llama al constructor CModel dos veces. Significa que Spring crea 2 objetos CModel, ¿verdad?
Si elimino la configuración AOP, Spring crea solo un objeto CModel.
¿Alguna idea de por qué es así?
Gracias.
Creo que Spring crea este bean y proxy para él. La clase de proxy dinámico extiende la clase base, por lo que debe llamar a super() en su constructor. Puede imprimir el seguimiento de la pila en el constructor de CModel para asegurarse de que (algo así como la nueva Exception(). PrintStackTrace()). – svaor