写的第一个ddd的demo,大家看看我理解的对不对
account 是一个实体。有存款,取款俩个行为。
accountRepository 仓储类。有三个方法,新建账号,得到账号,更新账号。
有一个转账的业务。A到B。假设条件成立,A有足够的钱。
领域服务 是不是应该这么写?
public interface DomainService {
// 调用accountRepository的得到账号方法得到account 分别执行account的
存款,取款方法。然后调用accountRepository的更新账号方法
boolena transfer(String fromAccountId, String toAccountId,
BigDecimal amount)
}
应用层服务在调用领域层服务?要是转账成功就打印凭据。要是新建账号成功就打印凭据,
public interface ApplicationService {
// 这里调用领域层服务
boolean transfer(String fromAccountId, String toAccountId,
BigDecimal amount)
// 这里调用accountRepository的新建账号方法
Account createAccount(String accountId, BigDecimal balance);
// 这里调用accountRepository的得到账号方法
BigDecimal getBalance(String accountId);
}
我这样写对不?
那事务应该在那一层上? 领域层服务那层还是应用层服务那层?