• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

dbtracer: 基于mybatis插件机制和druid SQL解析的自动记录表数据变更轨迹的工具 ...

原作者: [db:作者] 来自: 网络 收藏 邀请

开源软件名称:

dbtracer

开源软件地址:

https://gitee.com/ghsea/dbtracer

开源软件介绍:

考虑以下场景
  • 在后台业务系统中,涉及到多人使用同一些功能的时候,可能会有人错误的修改了某些数据,需要追查数据是谁修改的
  • 需要查看数据的所有历史修改轨迹

对于这个问题,常规做法是为每一个表都新建一个Log表,通过触发器或者业务代码记录数据变更前后的两条记录,最后再汇总两条记录生成一个对照。

dbtracer这个小工具正是为了自动化地满足以上业务场景的需求而开发。它最终生成像下面这样的轨迹记录:字段名:{旧值}--->{新值},例如:
用户表更新: 用户名:{gogogo}--->{comecomecome},地址:{武汉}--->{上海}

处理过程如下:

  • 使用mybatis插件机制拦截SQL的执行
  • 使用druid解析拦截下的Update SQL,并生成相同查询条件的Select SQL去查询数据作为变更前的值
  • 执行Update SQL
  • 解析该表的XML配置,生成字段英文与中文意义间的映射.以入参的Update SQL参数作为变更后的值,以查询出的值作为变更前的值,生成变更过的字段前后的对照关系并写入数据库表

*********目前代码还未完成


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap