网站需求分析与设计方案,关键词优化怎么弄,阿里云的wordpress如何设置,建设个人商城网站一、需求#xff1a;把靶器官的数据#xff0c;单独拿出来作为一个从表#xff0c;以List的方式接收这段数据#xff1b;
此时分析#xff0c;是需要有两个实体的#xff0c;一个是主表的实体#xff0c;一个是从表的实体#xff0c;并在主表实体新增一个List 字段来接…一、需求把靶器官的数据单独拿出来作为一个从表以List的方式接收这段数据
此时分析是需要有两个实体的一个是主表的实体一个是从表的实体并在主表实体新增一个List 字段来接收从表的实体数据 -----
二、建立两个实体SysResidentReplenish (主表实体)、SysResidentReplenishDetail从表实体
/** 靶器官筛查情况列表 */TableField(exist false)private ListSysResidentReplenishDetail targetList;
三、如下为原型图 四、分析实现当前端传过来的数据如何同时保存在主表 和 从表中
此处注意不能采用先存入一张表再存入另一张表的状态
要注意事务的特性即当有一张表 插入不成功的时候另一张表存入的数据可以回滚。
如此基于springBoot 项目 采用的方式
接口继承了IService
IService 中有许多的方法
五、重写方法
serviceImpl 代码 /*** 描述: 重写 IService中 boolean insert(T var1);* 重写的插入方法实现了事务管理当子表插入失败主表已经插入的数据会回滚* param* return boolean*/public boolean save(SysResidentReplenish sysResidentReplenish){try {sysResidentReplenishMapper.insert(sysResidentReplenish);ListSysResidentReplenishDetail targetList sysResidentReplenish.getTargetList();for (SysResidentReplenishDetail sysResidentReplenishDetail:targetList) {sysResidentReplenishDetail.setRecordId(sysResidentReplenish.getId());sysResidentReplenishDetailMapper.insert(sysResidentReplenishDetail);}}catch (Exception e){System.out.println(error插入子表失败:e.getMessage());return false;}return true;}