首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java
订阅
zak
更多收藏集
微信扫码分享
微信
新浪微博
QQ
38篇文章 · 0订阅
Guava 消息框架 EventBus 的实现原理
EventBus的设计理念是基于观察者模式的,可以参考设计模式(1)—观察者模式先来了解该设计模式。 EventBus的使用是非常简单的,首先你要添加Guava的依赖到自己的项目中。这里我们通过一个最基本的例子来说明EveentBus是如何使用的。 首先,这里我们封装了一个事件…
Spring Boot系列21 Spring Websocket实现websocket集群方案讨论
上图中,用户A通过websocket注册到服务A,服务A通过STOMP协议订阅RabbitMQ上的消息,同理用户B。如果用户A连接到服务A上,那么在位于服务B上的MQ模块即使使用SimpMessagingTemplate实例向用户A发送消息,此消息也无法到达用户A,原因是因为服…
Guava中的一些增强集合类
写了好多和Java集合类有关的文章,学习了好多集合类的用法,有没有感觉还是有一些常见的需求集合类没有办法满足呢?需要自己使用Java集合中的类去实现,但是这种常用的轮子Google和apache都帮我们造好啦. Java相关的工具包中有两个很有名,Google Guava和Ap…
阿里面试题:Mybatis中的Dao接口和XML文件里的SQL是如何建立关系的?
如果你看过笔者关于Mybatis源码分析的往期博文,相信你肯定可以给出一个不错的答案。 但鉴于系列文章篇幅较大,而且重点是源码部分的解读,所以笔者想再针对这个问题,再梳理下整个流程。 本文配合下列文章,食用更佳。 首先,Mybatis在初始化SqlSessionFactoryB…
源码分析之ArrayList
概念 ArrayList是我们常用的集合类,是基于数组实现的。不同于数组的是ArrayList可以动态扩容。 类结构 ArrayList是Java集合框架List接口的一个实现类。提供了一些操作数组元素的方法。 实现List接口同时,也实现了 RandomAccess, Clo…
Java程序员必备的Intellij插件(长期更新,截止到2018-05-03)
生成各种ignore文件,一键创建git ignore文件的模板,免得自己去写 截图: 支持lombok的各种注解,从此不用写getter setter这些 可以把注解还原为原本的java代码 非常方便 截图: \ 阿里巴巴出品的java代码规范插件 可以扫描整个项目 找到不…
分布式作业系统 Elastic-Job-Lite 源码分析 —— 作业执行
- [1. 概述] - [2. Lite调度作业] - [3. 执行器创建] - [3.1 加载作业配置] - [3.2 获取作业执行线程池] - [3.3 获取作业异常执行器] - [4. 执行器执行] - [4.1 检查作业执行环境]
JAVA 注解的基本原理
以前,『XML』是各大框架的青睐者,它以松耦合的方式完成了框架中几乎所有的配置,但是随着项目越来越庞大,『XML』的内容也越来越复杂,维护成本变高。 于是就有人提出来一种标记式高耦合的配置方式,『注解』。方法上可以进行注解,类上也可以注解,字段属性上也可以注解,反正几乎需要配置…
为什么我墙裂建议大家使用枚举来实现单例。
关于单例模式,我的博客中有很多文章介绍过。作为23种设计模式中最为常用的设计模式,单例模式并没有想象的那么简单。因为在设计单例的时候要考虑很多问题,比如线程安全问题、序列化对单例的破坏等。 如果你对单例不是很了解,或者对于单例的线程安全问题以及序列化会破坏单例等问题不是很清楚,…
源码分析 Mybatis 的 foreach 为什么会出现性能问题
最近在做一个类似于综合报表之类的东西,需要查询所有的记录(数据库记录有限制),大概有1W条记录,该报表需要三个表的数据,也就是根据这 1W 个 ID 去执行查询三次数据库,其中,有一条查询 SQL 是自己写,其他两条是根据别人提供的接口进行查询,刚开始的时候,没有多想,直接使用…