自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 千寻学java(1) -- 基于Redis实现的分布式锁

1、当代码块出现网络异常或者其他因素导致代码执行时间没有结束,但是锁达到了过期时间,就会导致其他请求也会进来,共同争抢同一张票。但是在多服务器的分布式场景下,就会因为多进程的运转,出现【超卖】或者【重复消费】的情况。这个时候可以通过redis缓存来完成分布式锁的创建。2、当两个请求进来的时候,可能导致锁误删。解决办法:使用操作人ID + 票ID作为组合key,以达到锁的唯一性。有如下代码:以每张票的ID作为锁key,每把锁设置10s的过期时间,防止出现异常的时候死锁。

2024-11-03 01:32:44 159 1

原创 奇奇怪怪的算法二:将输入的数字转换为中文

目前只支持一万亿以下的转化。且代码中的变量名称没有按照标准命名,日后再进行优化。120023 ---> 十二万零二十三。100001 ---> 十万零一。12 --> 十二(不是一十二)10001 ---> 一万零一。20 ---> 二十。2 --> 二。

2023-08-24 19:15:21 125 1

原创 奇奇怪怪的算法一:insert sql语句提取对应的字段与值,使用JAVA代码转换成JSON数据

第一种方法是直接通过逗号进行分割,如果是普通数据,则正好切割开,如果是json数据,则需要通过判断 { 和 } 的数量是否一致,如果是,则表示是完整的数据,但是 ”x,y,z“ 类型的数据会被分开,导致后面取值会造成 数据与字段匹配不上,所以使用第二种方法,通过对每一个字符进行判断。1、观察sql,发现字段与值都是放在括号里的,所以直接将括号里的值单独截取出来,去除 不需要的sql关键字等数据。3、对数据进行处理,观察sql,所有的数据都是放在 list 偶数位置上的,可以提取出来。

2023-08-09 20:01:17 348

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除