记录一个小bug
记录一次bug
项目中生成店铺时需要生成唯一的店铺码。利用redis的自增。昨天redis换了,原有的key并没有同步过来。当新增店铺时就会报错。
通过本地测试打印日志发现了问题
原有sql
1 | SELECT |
店铺码是六位的,这里取的是从第五个位置开始取,取长度为10的字符。不晓得这里为啥这么写。当数字超过一百,就取不到最大的店铺码了
这里改了下
1 | SELECT |
因为店铺码是左位补0的,这里不用CAST函数也行,返回的用integer接收就好了。
下面是生成的部分代码
1 | public String shopCode(Integer max) { |
这里的increment
方法是jetCache
里面的,返回的是已经自加了的数字。又在autoGenericCode
方法里面加1了一次。最终redis
里面保存的最大店铺码比数据库的要少1。
- 本文标题:记录一个小bug
- 本文作者:Rui
- 本文链接:https://hr2812.cn/2020/10/28/bug-note-2020-10-28-01/
- 版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明出处!