我是 Spring 3 的新手,它提供了一堆注释,避免了声明性方法。基于注释的方法和声明性方法之间到底有什么区别?基于注释有什么缺点吗?
问问题
570 次
1 回答
2
使用注释是使用声明性方法的一种方法,与使用程序化方法相反,在您的方法中涉及额外的 Java 代码:
声明式方法:
@Transactional
public void transferMoney(Long debitorId, Long creditorId, BigDecimal amount) {
Account debitor = accountDAO.findById(debitorId);
Account creditor = accountDAO.findById(creditorId);
creditor.add(amount);
debitor.remove(amount);
}
程序化方法:
public void transferMoney(Long debitorId, Long creditorId, BigDecimal amount) {
transactionTemplate.execute(new TransactionCallbackWithoutResult() {
@Override
protected void doInTransactionWithoutResult(TransactionStatus status) {
Account debitor = accountDAO.findById(debitorId);
Account creditor = accountDAO.findById(creditorId);
creditor.add(amount);
debitor.remove(amount);
}
});
}
于 2012-08-10T08:22:48.807 回答