关于java对比数据以及后续数据库操作(1)

本文介绍了一个数据对比功能的实现,通过Java处理申请人修改数据并进行审批流程的对比。涉及反射操作数据库,对比前后数据,处理新增、修改、删除三种情况,并利用特殊ID避免重复数据。
摘要由CSDN通过智能技术生成

   这段时间做了一个数据对比的功能模块。具体操作是从申请人修改自己的数据然后提交数据进行多次审批,如果审批完成那么则更新对应的数据。再此中间,审批人可以对申请人的信息进行编辑。

  先说一下思路吧,这是表结构

  通过进行修改数据与数据库数据进行比较,如果有改变那么进插入数据。每修改一个字段的数据则插入一条数据。applicationMainId是对应的申请主表Id,这里将不对流程操作进行解释。

   首先,创建你需要接收数据的实体类,这里因为界面上展示的并不是数据库中所有的数据,所以建议不要使用与数据库对应的那张关系表。

  接收到前端传递的数据之后,然后找到对应的数据库中的数据进行对比(UserChangeDo是我对应的修改数据信息表)

   第一种情况:对某一模块进行修改 (数据库中有对应数据) ----这里说明一下,因为最后会通过反射来操作数据库,所以表名称和字段名称必须有

 /**
  *obj1 数据库对应数据
  *obj2 修改之后的数据
  *ignoreArr 不需要进行对比的属性
  *modelType 对应表名
  *feildId 对应数据主键
  *userId 申请人id
  *dealId 操作人id
 **/
public List<UserChangeDo> compareFields(Object obj1, Object obj2, String[] ignoreArr,String modelType,Integer feildId,Integer userId,Integer deal
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值