报表生成及推送框架


业务场景
要生成大量的报表,推送给下游,有几十种场景,每种场景要生成十多张报表
不同场景之间有共性,也有差异
我就把共性都封装在框架里,把差异留给应用开发去配置, 
开发起来很快,一个初级开发,我给她讲某个场景需求和这个框架怎么用,讲了20分钟,她用了不到2个小时,就开发完了十多张报表
而且维护也很快,很多问题都是改一个地方,就都好了

1.统一的入口
ExportExecutor.execute()

2.易开发 易维护 易扩展
开发一个场景的十多个报表,主要工作量就是在 DataParser 配置一下字段的先后次序和分隔符,其他步骤都是复用的,比如,生成 txt 格式的文件,就配一个 TxtFileGenerator 就好了

主类定义步骤,每一步都有对应的类去处理,中间结果保存在 RequestContext 里
桥接模式
每一种文件格式对应一个主类,主类定义步骤,每个步骤对应一个维度
每一个维度对应一个继承体系,可以独立的变化,通过抽象层建立关联
DataReader, DataParser, FileGenerator, FileCompressor, FilePoster

策略模式
把 zip 格式改成 gzip,把 txt 格式改成 excel,
改一下配置就好,切换容易

单一职责原则
把公用的放在对应的层面上,容易维护,一个原因只改一个类
把招商银行的 13 个报表的分隔符换一种,或者只改 1 个报表的分隔符,都只需要改一个地方

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

叫我三师弟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值