spring 微服务,用的通用mybaits,在保存编辑的时候报错target must not be null,仅仅为了自己而记录一下

业务要求就是一个简单的增改业务,保存数据时要求数据根据几个字段A,B,C判断此数据的唯一性,重复则更新,无则保存,保证A,B,C的一条数据在表里的唯一性。

//我就大致手写一下意思

@Autowired

private 对象AService  对象Aservice;

public Map<boolean,String> insertOrUpdate(对象A  对象1){

try{

   对象A 对象2=new 对象A();

  对象2.setA(对象1.getA);

  对象2.setB(对象1.getB);

  对象2.setC(对象1.getC);

 List<对象A> list=对象Aservice.select(对象2);

if(list !=null && list.size>0){

  for(对象A dxa:list){

     对象Aservice.delete(dxa);

  }

}

/*

这个的save就报了target must not be null错误,为何呢,明显就是因为我们用了save方法,我为了保证数据的唯一性,查出数据后果断的将数据删除,插入新的数据,自以为

机智的一逼的我却忘记了save方法是如果对象中有主键ID,会先执行查询,然后更新!只有当ID不存在时,save方法才会执行插入。而insert方法就是单纯的插入方法,生活中的小细节

往往是致命滴,仅以此篇记录为脑残的青春

*/

//对象Aservice.save(对象1);

对象Aservice.insert(对象1);

}catch(Exception e){

   return map(false,"保存失败");

}

  return map(true,"保存成功");

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值