一、dao層代碼java
// 公司dao public interface ICompanyDao { int updateCompany(UserDTO user); } // 用戶dao public interface IUserDao { int updateUser(UserDTO user); }
二、事務層代碼ide
public interface TransactionalManage { boolean updateCompanyPeople(UserDTO user); } @Service("transactionalManage") public class TransactionalManageImpl implements TransactionalManage{ @Resource private ICompanyDao companyDao; @Resource private IUserDao userDao; @Override @Transactional public boolean updateCompanyPeople(UserDTO user) { int row = companyDao.updateCompany(user); if (row <= 0) { return false; } row = userDao.updateUser(user); if (row <= 0) { throw new BusinessException("updateCompanyPeople:更新失敗。"); } return true; } }
三、service層代碼blog
public interface ICompanyPeopleService { boolean updateCompanyPeople(UserDTO user); } @Service("companyPeopleService") public class CompanyPeopleServiceImpl implements ICompanyPeopleService { private static final Logger LOGGER = LoggerFactory.getLogger(CompanyPeopleServiceImpl.class); @Resource private TransactionalManage transactionalManage; @Override public boolean updateCompanyPeople(UserDTO user) { boolean isSuccess = false; try { isSuccess = transactionalManage.updateCompanyPeople(user); } catch (BusinessException e) { LOGGER.error("updateCompanyPeople:數據更新失敗。", e); } return isSuccess; } }