zoukankan      html  css  js  c++  java
  • 更新多表配置事务采取事务下沉的方式

    1、dao层代码

     // 公司dao
     public interface ICompanyDao {
     		int updateCompany(UserDTO user);
     }
     // 用户dao
     public interface IUserDao {
     		int updateUser(UserDTO user);
     }

    2、事务层代码

    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;
        }
    }
    

    3、service层代码

    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;
        }
    }
    

      

      

      

      

  • 相关阅读:
    inotify和rsync实现数据实时同步
    Powershell在相应的文件夹下用管理员模式打开
    LOJ6498「雅礼集训 2018 Day2」农民
    LOJ6502「雅礼集训 2018 Day4」Divide
    LOJ6501「雅礼集训 2018 Day4」Cube
    2021-10-11 杂题选听
    LOJ6507 「雅礼集训 2018 Day7」A
    LOJ6497「雅礼集训 2018 Day1」图
    CF103E Buying Sets
    CF266D BerDonalds(图的绝对中心)
  • 原文地址:https://www.cnblogs.com/yiyibinbin/p/9473065.html
Copyright © 2011-2022 走看看