笔记
文章平均质量分 61
一只醉了的猫
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
APP首页设计
考虑到IOS和Android之间UI规划和屏幕样式可能会有差别,我们在配置上标记了适用的系统和屏幕类型,而真正存储配置内容的UiModuleDTO类则采用了自由嵌套的结构。命令在key3中找出开始生效时间小于当前时间的ID集合,若ID集合为空,说明没有可用的配置,反之则取开始时间最早的一个ID,然后在key1中找出具体的配置内容返回给APP。这是我们APP原来的首页,整体的样式还是比较朴素的,特别在搞活动的时候,运营只能修改Banner、导航和商品推荐区的头图,来营造氛围,颇为令人诟病。原创 2022-08-23 11:15:15 · 1144 阅读 · 0 评论 -
签到系统的设计与实现
运营配置签到奖励规则,如“连续签到N天送积分”、“累计签到N天送优惠券”,“指定日期签到送抽奖次数”等,对达成签到条件的用户发放奖励常规的业务数据我们都存储在MySQL上。所以签到日志能放在MySQL上吗?假设我们现在有100万日活用户,其中有20万会进行签到。如果直接放在MySQL,那么一个月就会新增600万的签到数据,一年新增7300万。而其中我们关心的数据一直只有20W条。显然,这样的空间利用率很低。那么,我们可以对每个签到用户只存储一条最新的签到记录吗?不记录签到历史?我觉得不行。虽然这样空间利用率原创 2022-06-29 21:29:13 · 3871 阅读 · 0 评论 -
Stream使用Collectors.toMap方法当value为NULL时抛NullPointException
交易状态为失败的售后退款记录需要返回失败原因,失败原因存在另一张扣款流水表里面,写了一个私有方法用于填充失败原因,其中用到了Collectors.toMap方法用于将List转换成Map。排查查看异常日志发现是HashMap里面抛出的异常查看HashMap.merge的代码,发现该方法不允许value值为null,而value的值就是来源于DeductionFlowDTO::getRemark解决方案当remark为null时,将其替换为空字符串...原创 2022-06-09 15:58:03 · 1293 阅读 · 1 评论 -
中国历史
秦汉三国晋隋唐宋元明清民国原创 2020-03-31 01:22:24 · 183 阅读 · 0 评论
分享