多表关联下,某个数据未添加进入数据库,也没报错,其他数据都可以添加。
多表关联,对其中一个表进行编辑的操作时,需要将关联字段设为空值,因为一开始没有用到这几个字段,不设为空值会报错,那么当我们用到该字段进行操作时,若还是将其设为空值,则会导致数据添加不进去,因此需要将该字段设为空的代码删除。案例如下:
/**
* @ModelAttribute("updateStockincomebill")是SpringMVC提供的专门用于解决修改数据的时候数据丢失的问题
* @ModelAttribute当前类中所有方法执行之前都要先执行这个加了这个注解的方法
* 注解中加了名称之后,就表示指定方法之前先执行这个
* @param stockincomebill
* @return
*/
@ModelAttribute("updateStockincomebill")
public Stockincomebill beforeUpdate(Stockincomebill stockincomebill, String action){
if(null != stockincomebill && null != stockincomebill.getId() && "update".equals(action)){
//表示修改
Stockincomebill stockincomebillFromDB = stockincomebillService.findOne(stockincomebill.getId());
//让当前员工【持久化对象】与它所属的部门【持久化对象】断开关系
stockincomebillFromDB.setKeeper(null);
stockincomebillFromDB.setSupplier(null);
//该字段设为空,断开联系了,所以导致这个字段数据添加不进去数据库,删掉或者注释掉即可
// stockincomebillFromDB.setAuditor(null);
stockincomebillFromDB.getBillItems().clear();
//
return stockincomebillFromDB;
}
return null;
}
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之家整理,本文链接:https://www.bmabk.com/index.php/post/75212.html