java改需求_java web一次需求改动的教训

一个需求:考勤统计上显示请假,出差等信息。(这里简化为:统计表与请假表)

原来设计:请假后直接更改统计表

现在需求更改:请假后可以撤销

问题:如何将数据还原,之前直接保存在统计表里面,如果要还原有两种办法

1.反向计算出原统计的数据

2.建一个中间表,用于储存请假之后的统计信息

实践:我选择了第二种,因为我们的统计数据非常复杂,第二种方式更灵活。在写代码的时候,我将新的统计数据与旧的统计数据的差值保存在中间表,这样当我想还原的时候加上这个差值就可以了。这样做是为了防止同一天有多条请假,如果都撤消了,就需要每个都计算。这样一来,旧的数据被新的数据替换,后台找出数据,前台直接显示就够了。撤销的时候再计算一次,然后就还原成旧的数据。

但是,我的组长对我说,这样不行,你这有点面向过程的编程,如果中间哪个环节出错,最后写入到表里面的数据就是错的。他让我想一下如何对象。

最后我改成统计表不改变,中间表存放新数据与旧数据的差值,通过计算让前台显示出新的数据。这样一来,我不用去动统计表,根据中间表显示新数据,更加方便,当撤销时,直接删除中间表的数据就行了,这样显示的就还是旧的数据。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值