背景:
统计当前店铺下订单信息。根据订单开始时间,结束时间,商品id,商品名称,商品编号来获取。并可以导出基本信息和详细信息。涉及主商品表,子商品表,订单表,订单商品关联表。其中商品表信息和订单表记录数较大。
实现思路:
1、 从数据库中获取店铺下所有商品信息P,而不是按照条件来查询。
2、 由于商品信息改动较小,因此将P缓存到系统中
3、 根据查询条件过滤P,并绑定子商品,获取最后需要的商品信息RP
4、 根据订单开始时间和结束时间,获取对应的最小id和最大id,因为id上有索引
5、 查询出满足条件的订单信息
6、 根据RP将订单信息绑定到子商品上,将没有订单信息的商品清除
7、 缓存RP到session中
8、 从session中获取RP构造基础显示数据,并缓存到session中,为导出基础数据时服务
9、 从session中获取RP构造详细显示数据,并缓存到session中,为导出详细数据时服务
10、 从session中获取基础数据和详细数据导出。
11、 退出时清空session中信息,并清除缓存中P
12、 当商品有变动时,通过功能按钮清除缓存中P
关键点:
1、 数据库索引
2、 内存操作
3、 缓存
4、 缓存的清除