事务治理
在数据操作中,,,,,,事务治理是很是主要的。。。。通过AOP,,,,,,我们可以在不修改营业代码的情形下,,,,,,动态地治理事务。。。。
@Aspect@ComponentpublicclassTransactionAspect{@Around("execution(*com.example.repository.*.*(.*))")publicObjectmanageTransaction(ProceedingJoinPointjoinPoint)throwsThrowable{TransactionStatusstatus=TransactionAspectSupport.createTransactionStatus("tx");try{TransactionAspectSupport.startTransaction(status);Objectresult=joinPoint.proceed();TransactionAspectSupport.commitTransaction(status);returnresult;}catch(Exceptione){TransactionAspectSupport.rollbackTransaction(status);throwe;}}}
后置返回通知(AfterReturning)
在目的要领乐成执行后,,,,,,但在我们对效果举行任那里置之前执行。。。。
@Aspect@ComponentpublicclassPostExecutionLoggingAspect{@AfterReturning(pointcut="execution(*com.example.service.*.*(.*))",returning="result")publicvoidlogAfterReturning(JoinPointjoinPoint,Objectresult){System.out.println("后置返回通知:要领"+joinPoint.getSignature().getName()+"返回值:"+result);}}
性巴克AOP的优势
提高代码可维护性:将横切关注点抽离到自力的切面中,,,,,,使营业代码越发清晰,,,,,,易于维护和修改。。。。提高代码复用性:通过AOP,,,,,,横切关注点可以在多个营业逻辑中复用,,,,,,阻止代码重复。。。。提升开发效率:AOP能够闪开发者专注于焦点营业逻辑,,,,,,而不必重复编写相同的横切关注点代码。。。。
增强辖档烷活性:通过动态地添加或修改切面,,,,,,可以在不改变原有代码的情形下实现功效扩展或修改。。。。
使用通知提高代码效率
通过界说切面和切入点,,,,,,我们可以在营业代码中实现高效的横切关注点处置惩罚。。。。例如,,,,,,事务治理、清静控制等,,,,,,可以通过AOP在不改变营业代码的情形下实现。。。。
@Aspect@ComponentpublicclassTransactionAspect{@Around("execution(*com.example.service.*.*(..))")publicObjectmanageTransaction(ProceedingJoinPointjoinPoint)throwsThrowable{System.out.println("Transactionstart");Objectresult=joinPoint.proceed();System.out.println("Transactionend");returnresult;}}
校对:何伟(1C0m4pJyqZtPma0S7t9ZFfz4hTykKag)


