- 博客(63)
- 收藏
- 关注
原创 RedisSon高并发分布式锁实战RedisSon源码解读
redis redisson watchdog 锁续命 自旋 lua redLock
2023-06-15 16:53:55
1264
原创 【无标题】List去重常见方法效率比较
运行测试后,可以发现Set的效率最低,Map的效率中等,Stream的效率较高。但是这并不代表Set就不好用,因为在数据规模比较小的情况下,三种方法的差异会比较小,而且Set的代码量最少,易于书写和维护。使用Set集合是非常常见的方法,因为Set具有不允许元素重复的特性,当我们把List的元素存放到Set中时,就自动实现了去重。这种方式的原理是利用HashMap的key不重复的特性,遍历List时将List中的元素存放到HashMap中,这样重复的元素就自动被去掉了。Java8 Stream流去重。
2023-06-13 09:20:30
917
原创 多线程与高并发编程
volatile 懒汉模式 饿汉模式 饿汉模式完美实现(双重校验)volatile是否可以取代sync 锁优化、CAS、ABA问题
2022-08-27 22:35:13
308
原创 4.子查询
4.子查询4.1.IN4.2 对比IN和JOIN使用JOIN使用IN个人认为第一个比较简单ALLall (1,2,3)= > 3= ANY等价于 IN相关链接i的每一条记录和子查询中计算出来的avg进行比较,这样查询的次数很大,但是实际上非常重要,经常使用EXISTS使用IN也可以实现IN 和 EXISTS 相比 EXSTS 返回的是ture,IN是结果集,所以ECXSTS更节省性能的消耗位于select部分的子查询不易读...
2022-04-02 16:45:51
138
原创 3.聚合函数
3.聚合函数3.1 MAX()最大值3.2 GROUP BY 分组注意语句的顺序select --> from —> where ----> group by -----> order by 所以group by永远在 select from where 之后 order by 之前3.3 HAVING 数据筛选3.4 group by + with rollup 计算每一个分组的和...
2022-04-01 14:51:06
146
原创 xxl-job集成feign调用外部接口报错:org.springframework.beans.factory.BeanCreationException: Error creating bean
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'scopedTarget.oauth2ClientContext': Scope 'request' is not active for the current thread; consider defining a scoped proxy for this bean if you intend to refer to it fro
2022-03-08 14:08:15
3346
5
原创 SQL MASTERY 运算符
SQL MASTERY 运算符DISTINCT 去除重复LIKE2.2.1 B开头的 不区分大小写SELECT * DISTINCTfrom customersWHERE last_name like 'B%'2.2.2 中间有b2.2.3 结尾有b2.2.4 _表示一个字符REGEPX2.3.1 字符串包含2.3.2 字符串开头包含目标字段2.3.3 字符串结尾包含目标字段2.3.4包含多个目标字符串2.3.5 [abc]d ad bd cd /[a-
2022-03-02 13:48:14
389
原创 SQL MASTERY what is SQL
SQL MASTERY1.what is SQL数据库是一个可以轻易获取形式来存储的数据的集合原理:数据库可以通过数据库管理系统或者DBMS来管理数据库,我们连接到一个DBMS来下达查询修改的指令,DBMS就会执行我们的指令,并返回结果我们将现有的数据库主要分为两种:关系型数据库和非关系型数据库(NoSQL)每一个表都代表一种对象,eg:用户,产品,供应商DBMS的数据库有:MySql、SQL Server、OraclesequelSQL...
2022-03-02 11:25:18
348
原创 count(*)、count(1)、count(列)、count(主键)区别
count(*)、count(1)、count(列)、count(主键)
2022-02-23 11:20:38
548
原创 JVM调优-字节码文件结构-垃圾回收器-Arthus的调优实战
JVM调优jvm java语言的优势,有jvm虚拟机,通过字节码文件,可以在任意的环境运行,其他语言都需要根据不同的操作系统(win、macos、linux)形成各自的机器码文件,在jdk1.8的源码中有根据不同的环境形成了不同的指令集,所以java通过jvm这个适配器,去适配各个系统。java ---------> 字节码 --------------> 不同的操作系统对接jvm后对接一个字节码文件其他语言-------------> 机器码 ------------>
2022-01-27 09:24:43
1417
原创 mybaits如何控制台输出sql语句
mybatis-plus:configuration:log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
2022-01-07 08:20:39
627
原创 BaseEntity
设计一个合理的适合自己项目的BaseEntity可以大幅度的减少代码的行数,使得代码更加优雅package com.**.t31.core.common;import com.baomidou.mybatisplus.annotation.IdType;import com.baomidou.mybatisplus.annotation.TableField;import com.baomidou.mybatisplus.annotation.TableId;import com.fasterx
2022-01-04 09:14:20
324
原创 The directory /renren-generator is registered as a Git root, but no Git repositories were found ther
The directory /renren-generator is registered as a Git root, but no Git repositories were found there.git上下载的开源项目或者之前的项目已经被git管理过pull就会出现问题去掉该目录即可
2022-01-02 22:55:51
429
原创 Calendar的相关参数使用
Calendar设置固定的时间@Testpublic void lonngTest(){ //获取当天的某个时间 //System.out.println( client.getLock("longtest")); Calendar calendar = Calendar.getInstance(); //System.out.println(calendar); System.out.println("直接获取的"+calendar.getTime());
2021-12-23 10:41:42
935
原创 mac 出现 Failed to create parent directories for [/data/applogs/xxl-job/xxl-job-admin.log]
mac 出现 Failed to create parent directories for [/data/applogs/xxl-job/xxl-job-admin.log]问题的原因就是mac的保护机制,没有权限的话不能再/目录创建首先尝试是否开启权限cd /sudo mkdir datacd datasudo mkdir applogscd applogssudo mkdir xxl-job则说明没有没有相关的权限csrutil status 输入csrutil sta
2021-12-14 08:39:07
5457
原创 MySQL海量数据设计实践
MySQL海量数据设计实践MySQL存储引擎原理拆解以及设计深度剖析页结构页头:记录页面的控制信息,共占56字节,包括页的左右兄弟页面指针(双向链表)、页面空间使用情况等。最小最大虚记录:比页内最大小主键还大小确定一个范围,即一个页的空间,查看时,根据和最大最小虚记录的比较结果判定是否在这个空间内。记录堆:行记录存储区,分为有效记录和已删除记录自由空间链表:存储记录堆中,存储的过程中可定有被删除的记录,自由空间链表的作用就是吧删除的记录链起来,方便被删除的记录有什么,找到这些被删除的空间的目的
2021-12-02 15:52:27
296
原创 mysql基础数据类型、索引
sql1.常用的数据类型(全部在最后)int 4 -2147483648-2147483647 0-4294967295decimal 16char 1~255 固定长度varchar 1~255 根据内容调整空间,可节省空间datetimedatetimetext
2021-11-29 00:30:08
332
原创 Mac解决Typora图片不能查看问题的图片上云方案
Mac解决Typora图片不能查看问题的图片上云方案Typora的文件的存储是在电脑本地的,如果吧文件发送给别人,或者希望把写好的md文件上传到博客,图片就会看不见,可以使用Picgo解决这个问题一下是mac系统的解决过程。使用gitee(安全差)1.在gitee建立imgae仓库存储图片一定要有master分支点击初始化readme文件https://gitee.com/*************/image生成令牌https://gitee.com/profile/personal
2021-11-26 11:34:06
670
原创 系统健壮性设计
系统健壮性设计1.entity作为传入的参数,不单要进行非空校验,而且要进行具体参数的校验,2.根据id查询获得users对象,要判断users是否为空3.注释//生成用户列表 很模糊,要注释成为 生成属于这个角色的用户列表4.1,3,4是错误的1.魔法数字应该定义为常量2.log的时候出错奥带上messageVo否则不知到什么地方出错3.直接使用toString输出日志F5 龙卷风的最高等级软件负载同机房,同单元优先 1ms一下跨机房 5ms左右跨区域
2021-11-26 09:41:03
721
原创 分布式锁 redis Redisson
1.购票占座 11车 7D的一位只能被一个人使用java可以使用sync实现,但是占座服务可能多个jvm同时抢座位,sync只能给一个jvm中的资源加锁。分布式锁 redisRedis统一管理一把锁抢到锁的再进行统一的操作setnx 判断加锁成功和锁的互斥expire 设置锁的过期时间这样客户端中断30s 锁会释放单纯这俩命令不完美解决方案:1. Set lock “1234” EX 1000NX/PX s/ms 要么都成功.
2021-11-23 15:30:10
2704
原创 用户系用实现
1.jwtJson web token (JWT), 是为了在⽹络应⽤环境间传递声明⽽执⾏的⼀种基于JSON的开放标准((RFC 7519).定义了⼀种简洁的,⾃包含的⽅法⽤于通信双⽅之间以JSON对象的形式安全的传递信息。因为数 字签名的存在,这些信息是可信的,JWT可以使⽤HMAC算法或者是RSA的公私秘钥对进⾏签名。2.jwt组成头部包含了两部分,token 类型和采⽤的加密算法:{ "alg": "HS256", "typ": "JWT" } 1234它会使⽤ Base64 编码组成.
2021-11-20 16:34:35
89
原创 leecode027移除元素
package com.***;/** * @Author: * @Date: 2021/11/18/08:16 * @Description: **/public class leecode027 { /** * 给你一个数组 nums 和一个值 val,你需要 原地 移除所有数值等于 val 的元素,并返回移除后数组的新长度。 * <p> * 不要使用额外的数组空间,你必须仅使用 O(1) 额外空间并 原地 修改输入数组。 * &
2021-11-18 14:50:24
77
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人