在我的businesslogic方法中,我使用如下注釋來進行事務管理。Spring AOP:帶有@Transactional註釋方法的方法的註釋切入點?
@Service
public class SampleBusinessLogicImpl implements SampleBusinessLogic {
@Override
@Transactional(rollbackFor=Exception.class)
public Sample createSample(Sample sample) throws SampleException {
...
}
}
我想執行其他方面的這種方法,我定義的方面如下:
@Aspect
public class SampleDynamicValidationAspect {
private static final Logger logger = LoggerFactory.getLogger(RequestValidationAspect.class);
@Before("execution(public * com.rakuten.gep.sample.businesslogic.impl.SampleBusinessLogicImpl.createSample(com.rakuten.gep.sample.entity.common.Sample,..)) && args(sample,..) throws *Exception")
public void validate(Sample sample) throws SampleException {
//Dynamic validation here.
//If some validation is failed, wrapped the appropiate exception in SampleException
logger.debug("Involking Dynamic Validator");
System.out.println("************** Dynaic Validator *************");
}
}
我可以看到交易工作正常,看日誌,但是這個新聲明勸不得到執行。
任何事情?
你可以檢查你的Spring配置及是否配置方面豆?在這裏發佈你的配置,因爲問題可能在那裏。 – svjn