JavaWeb SSM框架项目 如何实现多表同时修改并且获取多表的id

我们的准备工作是有三张表,实现的功能是同时修改这三张表的数据
sys_sick 主键 id
sys_hospital 主键 id 外键 sick_id
sys_addition 主键 id 外键 sick_id

首先我们先进行查找回填操作并且同时获取三个表的主键id值
记住修改不可以根据外键id 因为外键id可以重复。而主键id是唯一的。
所以我们还是要遵守规范。修改回填还是需要主键的

第一步:对应的我们要在po里面写好模型
在这里插入图片描述
第二步:在vo层写SickVo(因为修改肯定之前要回填数据,需要连表查询)
在这里插入图片描述
创建一个vo继承主表sys_sick 然后将另外两张表的全部字段写进去。
当然我们也需要写另外两张表的主键id 由于重名问题,我们在po里面取个别名。包括两个外键sick_id 也是 取个别名,可以分辨。

第三步:在dao层写一个接口 根据id查询数据 返回类型是SickVo
在这里插入图片描述
第四步:在mappers里面先写一个Vo的映射 继承Sys_sick字段
在这里插入图片描述
还是那句话因为三张表的主键id重复,所以在Vo这里映射也是采取取别名的方式来查找
在这里插入图片描述
写上查询sql 使用的是连表查询。通过sick_id。然后记得取别名。
在这里插入图片描述
第五步:在service里面写接口
在这里插入图片描述
第六步:在service.impl 里面调用
在这里插入图片描述
第七步:在controller 里面进行跟页面的对接请求
在这里插入图片描述
第八步:在jsp里面进行回填请求
在这里插入图片描述
在这里插入图片描述
我使用的是layui里面自带的回填form表单控件的通过name属性回填数据

第九步:在请求的那个from表单里面写上隐藏的input
在这里插入图片描述
*最后回填数据成功!接下来就可以进行修改操作了。
在这里插入图片描述
在这里插入图片描述
同时修改多张表操作步骤:
第一步:dao 层接口写上三个普通的单表修改

在这里插入图片描述
第二步:在mapper 层写上三个普通的单表修改sql
在这里插入图片描述
第三步:在service接口层进行三张表修改的合并操作
在这里插入图片描述
第四步:在service.impl层,进行三次调用修改。根据三个表的主键。
在这里插入图片描述
在这里插入图片描述
第五步:在controller层进行获取三个表的主键id。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
用vo来进行接收。没办法 谁叫我们的三张表id名字一样呢。这就是用到了我们前面那个vo取别名的意义了!
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
组装数据 (5555… 组装了好久 哭泣…)
在这里插入图片描述
毕竟我们service层是需要传入三个表的实体数据,所以组装数据的意义就是从vo里面
拆开分给三个表。如果不组装的话。id又会乱套重名。
虽然麻烦点。但是效果还是有的!

第六步:在jsp页面进行请求
在这里插入图片描述在这里插入图片描述
最后修改成功 撒花✿✿ヽ(°▽°)ノ✿!

如何需要删除的嗯 或者逻辑删除的 其实是修改操作的我也可以在写一篇
但是估计会了 回填数据跟修改 应该也不需要我在写一篇了。

猜你喜欢

转载自blog.csdn.net/weixin_47336389/article/details/122223362
今日推荐