
不写触发器,可以怎样去实现这个逻辑
发布日期:2023-09-18 21:37:09
浏览次数:4
分类:精选文章
本文共 857 字,大约阅读时间需要 2 分钟。
如果你不想使用触发器,你可以在业务逻辑中手动检查行表的状态,并更新头表的状态。以下是一个示例: 1. 在执行完某些业务逻辑后,更新行表的状态为关闭: try (SqlSession session = sqlSessionFactory.openSession()) { MyMapper mapper = session.getMapper(MyMapper.class); // 更新行表的状态为关闭 mapper.updateLineTableStatus(headerId, "关闭"); // 检查行表的状态是否都为关闭 int lineCount = mapper.getLineTableCount(headerId); int closedCount = mapper.getClosedLineTableCount(headerId); // 如果行表的数量等于关闭状态的数量,则更新头表的状态为关闭 if (lineCount == closedCount) { mapper.updateHeaderTableStatus(headerId, "关闭"); } session.commit(); } catch (Exception e) { e.printStackTrace(); } 在上述示例中,我们首先使用`updateLineTableStatus()`方法将行表的状态更新为关闭。然后,我们使用`getLineTableCount()`方法获取行表的数量,使用`getClosedLineTableCount()`方法获取关闭状态的行表数量。最后,如果行表的数量等于关闭状态的数量,则使用`updateHeaderTableStatus()`方法将头表的状态更新为关闭。 你需要将`MyMapper`替换为你自己的Mapper接口,并确保在MyBatis配置文件中正确配置了Mapper接口的映射关系。同时,你需要根据需要修改参数的名称和值,并实现相应的Mapper接口方法。发表评论
最新留言
表示我来过!
[***.240.166.169]2023年09月04日 03时14分45秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
财务系统库存重构现有量方案追忆
2019-03-07
一致性算法Raft的原理简介与源码初探
2019-03-07
关于mysql事务&MVCC以及锁机制的总结
2019-03-07
equals和==
2019-03-07
JVM、JRE、JDK、Java SE、Java EE、Java ME
2019-03-07
索引(Index)
2019-03-07
向下兼容、向上兼容、向前兼容、向后兼容
2019-03-07
每天记录学习的新知识 : 导入信任证书到 Jdk
2019-03-07
每天记录学习的新知识 : gradle配置国内镜像
2019-03-07
每天记录学习的新知识 : 编译成功但是无法运行
2019-03-07
每天记录学习的新知识 : 绑定完GitHub怎么提交项目
2019-03-07
每天记录学习的新知识 : 正则表达式限制车牌号码
2019-03-07
每天记录学习的新知识 : MagicIndicator 使用记录
2019-03-07
每天记录学习的新知识 : RM 删除命令
2019-03-07
每天记录学习的新知识 : PM 操作应用命令
2019-03-07
每天记录学习的新知识: 源生应用安装
2019-03-07
每天记录学习的新知识:PopupWindow
2019-03-07
每天记录学习的知识:Comparable 多条件比较器
2019-03-07
高德地图集成
2019-03-07