会员
众包
新闻
博问
闪存
赞助商
HarmonyOS
Chat2DB
所有博客
当前博客
我的博客
我的园子
账号设置
会员中心
简洁模式
...
退出登录
注册
登录
Faylinn
www.heyouxin.cn
博客园
首页
新随笔
联系
订阅
管理
上一页
1
2
3
4
5
下一页
2020年10月23日
RestHighLevelClient进阶-聚合操作
摘要: 之前的博客写过Spring与RestHighLevelClient的基础用法,但是实际使用中,会存在大量的复杂操作,如分组,聚合等。 接下来我们就来看下不太好用的分组聚合基本用法 AggregationBuilder 首先RestHighLevelClient中分组需要用到AggregationBu
阅读全文
posted @ 2020-10-23 17:32 faylinn
阅读(14647)
评论(1)
推荐(2)
2020年8月31日
MongoTemplate的分组与联表
摘要: Criteria criteria = Criteria.where("classId").is(classId).and("deleted").is(false); GroupOperation groupOperation = group("userId").max("score").as("s
阅读全文
posted @ 2020-08-31 17:06 faylinn
阅读(2063)
评论(0)
推荐(0)
分布式锁-Zookeeper锁
摘要: 前言 上篇我们说到分布式锁的大概与Redis锁的实现与原理,接下来我们介绍下Zookeeper锁。 Zookeeper锁 我们在实现zookeeper锁时也使用了别人撸好的轮子稍加封装,使用的是apache的curator。 首先,我们实例化一个Curator的客户端实例 @ConditionalO
阅读全文
posted @ 2020-08-31 16:57 faylinn
阅读(284)
评论(0)
推荐(0)
2020年8月26日
分布式锁-Redis锁
摘要: 一. 为什么要使用分布式锁 现如今项目集群化,大部分都是采用了多节点部署。在越来越复杂的业务中,java自身的锁机制已经满足不了现在的业务需求了。所以此时需要分布式锁来避免一些因为并发导致的业务错误。 二. 分布式锁介绍 现在业务中分布式锁主要有redis与zookeeper两种方式实现。 三. R
阅读全文
posted @ 2020-08-26 11:44 faylinn
阅读(246)
评论(0)
推荐(0)
2020年7月31日
HashMap源码(三)
摘要: HashMap红黑树转换条件是什么? 以下为HashMap的put方法 final V putVal(int hash, K key, V value, boolean onlyIfAbsent, boolean evict) { Node<K,V>[] tab; Node<K,V> p; int
阅读全文
posted @ 2020-07-31 16:47 faylinn
阅读(224)
评论(0)
推荐(0)
2020年6月3日
springboot注解Conditional的用法
摘要: Condition 是在Spring中的的条件注解,通过这个注解可以根据条件,决定类是否加载到Spring Ioc容器中。 @Conditional的使用 注解实现: public class AnnotationMethodLoader implements Condition { @Overri
阅读全文
posted @ 2020-06-03 14:26 faylinn
阅读(281)
评论(0)
推荐(0)
【并发编程】公平锁与非公平锁的区别
摘要: 在Java的concurrent包中,公平锁与非公平锁是很常见的概念,ReentrantLock、ReadWriteLock默认都是非公平模式。 非公平锁的效率为什么会高于公平锁呢?那么公平锁与非公平锁又有什么区别呢?、 概念解释 首先从字面意思理解,公平锁自然是遵循FIFO(先进先出)原则的,先到
阅读全文
posted @ 2020-06-03 13:59 faylinn
阅读(7367)
评论(2)
推荐(3)
2020年4月30日
ArrayList源码
摘要: 底层 :ArrayList是List接口的大小可变数组的实现。 是否允许null :ArrayList允许null元素。 时间复杂度 :size、isEmpty、get、set、iterator和listIterator方法都以固定时间运行,时间复杂度为O(1)。add和remove方法需要O(n)
阅读全文
posted @ 2020-04-30 18:01 faylinn
阅读(145)
评论(0)
推荐(0)
HashMap源码(二)
摘要: final Node<K,V>[] resize() { // 当前table Node<K,V>[] oldTab = table; // 获取当前table的长度,如果未初始化则为0 int oldCap = (oldTab == null) ? 0 : oldTab.length; // 获取
阅读全文
posted @ 2020-04-30 17:22 faylinn
阅读(131)
评论(0)
推荐(0)
springboot的mysql多数据源实现
摘要: Mysql的数据源大家用的应该很多,这里我们说一种简单的多数据源的实现方法(aop+springboot+注解实现),基于SpringBoot。 AbstractRoutingDataSource介绍 Spring boot提供了AbstractRoutingDataSource 根据用户定义的规则
阅读全文
posted @ 2020-04-30 17:18 faylinn
阅读(985)
评论(0)
推荐(0)
上一页
1
2
3
4
5
下一页
公告
、、、