Red de conocimiento informático - Espacio del host - Las transacciones de primavera siempre aparecen en mi proyecto Java, ¿qué está pasando?

Las transacciones de primavera siempre aparecen en mi proyecto Java, ¿qué está pasando?

1. Primero use el siguiente código para confirmar que su Bean es un objeto proxy.

Un bean debe estar definido por Spring (se puede definir mediante XML o anotaciones) para aceptar transacciones.

Agregar transacciones a objetos recién creados directamente no tendrá ningún efecto.

Puedes determinar si un objeto es un proxy mediante:

AopUtils.isAopProxy(Objeto objeto)

AopUtils.isCglibProxy(Objeto objeto) //cglib

AopUtils.isJdkDynamicProxy(Objeto objeto) //proxy dinámico jdk

2. La función de entrada debe ser pública; de lo contrario, la transacción no funcionará. Esto está determinado por las capacidades AOP de Spring.

3. La configuración del punto de entrada es incorrecta.

lt;! -- Configurar transacciones usando anotaciones --gt;

lt: annotation-driven transaction-manager="transactionManager" proxy-target-class="true"/gt;

lt;!--Configurar transacciones usando métodos facetados--gt;

lt;tx: asesoramiento id="txadvice" transaction-manager="transactionManager"gt;

lt;tx: atributosgt;

lt;tx: nombre del método="*" aislamiento="READ_COMMITTED" propagation="REQUIRED" rollback-for="java.lang.Exception" /gt;

lt;/tx.attributegt;

lt;/tx: recomendadogt;

lt;aop: configuracióngt;

lt; pointcut id="pointcut" expresión="execution(* com. tyyd...*Service.do*(...))"/gt;

lt; consejo del asesor -ref=" txadvice" pointcut-ref="pointcut"/gt;

lt;/aop:configgt;

4. Si está utilizando springmvc, puede deberse al contexto: componente- escaneo causado por escaneo repetido:

5. Por ejemplo, si se usa mysql y el motor es causado por MyISAM (porque no admite transacciones), simplemente cámbielo a InnoDB.

org.springframework.transaction.UnexpectedRollbackException: la transacción se revierte porque se ha marcado como reversión únicamente

Revisé todos los métodos de consulta y no hay excepciones. Busqué mucha información en Baidu. y todavía no lo entiendo.