• repository.save() 无效 无法保存数据


    repository.save() 不起作用,无法保存数据

    有一个更新操作是需要先delete user的数据,然后再重新insert新的数据。

    刚开始使用以下写法:

    @Override
        public void updSenderNoList(LazyDynaMap userBean) {
            logger.info("////////////////   Start to update Sender No List.");
            SysUser sysUser = (SysUser) userBean.get("addUser");
            userSaRepository.deleteSenderNoList(sysUser.getAccountNo(),sysUser.getUserId());
            insertSenderNoList(userBean);
            logger.info("////////////////   End to update Sender No List.");
        }
        
    @Override
        public void insertSenderNoList(LazyDynaMap userBean) {
            logger.info("////////////////   Start to insert Sender No List.");
            SysUser addUser = (SysUser) userBean.get("addUser");
            String senderNoList = (String) userBean.get(Constants.BEAN_USER_SELECTSENDERLIST);
            if (StringUtil.isNotEmpty(senderNoList)) {
                List<UserSa> userSaList = new ArrayList<UserSa>();
                UserSa userSa = null;
                for (String senderNo : senderNoList.split(Constants.SENDER_NO_SEPARATOR)) {
                    userSa = new UserSa(addUser.getAccountNo(),addUser.getUserId(),senderNo);
                    userSaList.add(userSa);
                }
                userSaRepository.save(userSaList);
            }
            logger.info("////////////////   End to insert Sender No List.");
        }
    

    然后做测试时候发现是单单是这个updSenderNoList方法是可以insert数据的

    可是当整个模块一起测试的时候,发现可以delete数据,可是却无法insert数据

    搞了两个多小时,也想到可能是flush的问题,可是开始只是在delete后加了flush,发现没有效果

    最后想到在save后面加了flush,再次测试,成功insert数据,问题解决!!
    本来有一个saveAndFlush()方法的,可是这个方法的参数只能是单个实体,不能多个实体,需要批量save的话,只能save后再加flush()。

    PS:这个问题也有可能是由于实体类的配置问题,就是实体类可能需要配置一个ID类,我这里是没有配置的。我没有测试配置ID类之后会怎样,不清楚可不可以。

    关于实体类与ID类的配置请参考这个:

    http://note.youdao.com/noteshare?id=ff4c26ee17053de068eb1655f0f359c2&sub=1090BA93FED44BB49542C5B4EA5C4064

  • 相关阅读:
    NOIP2014飞扬的小鸟[DP][WRONG]
    POJ2184 Cow Exhibition[DP 状态负值]
    Quantum Bogo sort浅谈
    POJ3211 Washing Clothes[DP 分解 01背包可行性]
    VIJOS P1426兴奋剂检查[DP 状态哈希]
    VIJOS P1037搭建双塔[DP]
    NOIP2006金明的预算方案[DP 有依赖的背包问题]
    POJ1742 Coins[多重背包可行性]
    NOIP水题合集[3/未完待续]
    单调队列
  • 原文地址:https://www.cnblogs.com/jimloveq/p/10609468.html
Copyright © 2020-2023  润新知