Java 程序员在日常工作中经常会听到 SPI,而且很多框架都使用了 SPI 的技术,那么问题来了,到底什么是 SPI 呢?今天阿粉就带大家好好了解一下 SPI。
Java 中的接口还可以这样用,你知道吗?
Java 程序员都知道要面向接口编程,那 Java 中的接口除了定义接口方法之外还能怎么用你知道吗?今天阿粉就来带大家看一下 Java 中的接口还可以有哪些用法。
一文带你了解 Spring 的@Enablexxx 注解
前面的文章给大家介绍 Spring 的重试机制的时候有提到过 Spring 有很多 @Enable 开头的注解,平时在使用的时候也没有注意过为什么会有这些注解,今天就给大家介绍一下。
远程调用失败?如何优雅的进行重试?
在日常开发的过程中我们经常会需要调用第三方组件或者数据库,有的时候可能会因为网络抖动或者下游服务抖动,导致我们某次查询失败,这种时候我们往往就会进行重试,当重试几次后依旧还是失败的话才会向上抛出异常进行失败。接下来阿粉就给大家演示一下通常是如何做的,以及如何更优雅的进行重试。
一文教你如何通过 Stream API 批量 Mock 数据
在日常开发的过程中我们经常会遇到需要 mock 一些数据的场景,比如说 mock 一些接口的返回或者说 mock 一些测试消息用于队列生产者发送消息,可能很多时候我们都是使用一些固定的 case 或者一条相同的数据重复使用。今天阿粉就教大家用 Stream 去构造一些伪真实的一些数据。
求求你了,写代码考虑一下扩展,套用一点设计模式吧
弱弱地问大家一下,你们遇到过的最烂的代码是什么样子的?
后端程序员对于 Docker 要掌握多少才行?阿粉的答案是
手把手带你编写属于自己的 starter
前面的文章阿粉给大家介绍了 SpringBoot 的自动装配功能,相信大家对自动装配都有了很好的理解,那么今天阿粉通过一个示例来给大家演示一下如何编写一个自己的 starter。
SpringBoot 自动装配的原理分析
关于 SpringBoot 的自动装配功能,相信是每一个 Java 程序员天天都会用到的一个功能,但是它究竟是如何实现的呢?今天阿粉来带大家看一下。
在阿里内部是如何 Debug 线上问题的?
在日常工作中我们经常会遇到一些线上异常的情况,而且有些问题只有在线上才会出现,由于环境和数据不一样在本地和测试环境根本没办法复现,而且线上也没有输出日志,那么遇到这种情况我们往往要怎么去解决呢?
IntelliJ IDEA 的这个 BUG 存在三年了!
Java 程序员使用最多的 IDE 那一定是 IntelliJ IDEA(如果你还在用 Eclipse 或者 MyEclipse 我建议你换换),阿粉作为一名Java 程序员日常工作中几乎天天使用,不知道你有没有遇到过这种场景,那就是如果远程仓库中多了新的分支,每次通过右下角的分支管理 fetch 了远程分支过后,在搜索框中找不到获取到的分支,而是要关闭窗口,重新再打开搜索一下才能进行 checkout 操作,而且移除了分支也是一样,不会动态更新。
Spring 的 Bean 明明设置了 Scope 为 Prototype,为什么还是只能获取到单例对象?
Spring 作为当下最火热的Java 框架,相信很多小伙伴都在使用,对于 Spring 中的 Bean 我们都知道默认是单例的,意思是说在整个 Spring 容器里面只存在一个实例,在需要的地方直接通过依赖注入或者从容器中直接获取,就可以直接使用。
我敢打赌你一定没用过 Java 中的这个类!
在 Java 中有这样的一个类,平时可能都用不到,但是需要的时候还是会很方便的,它就是 Java 中的javafx.util.Pair。在介绍 Pair 的使用之前我们先看看下面的例子。
分享几个阿粉常用的 IDEA 插件,每一个都能提高工作效率
作为一个程序员,虽然阿粉不承认自己每天都在搬砖,但是事实告诉阿粉自己就是在搬砖,那如何高效的搬砖就成了阿粉持续研究的课题,毕竟通过高效的搬砖过后,阿粉才能有时间好好摸鱼。今天阿粉就把自己工作中最常用的几个 IDEA 插件分享给大家,帮助大家提高工作效率(更好的搬砖)。
用了那么久的 Java For 循环,你知道哪种方式效率最高吗?
作为程序员每天除了写很多 if else 之外,写的最多的也包含 for 循环了,都知道我们 Java 中常用的 for 循环有两种方式,一种是使用 for loop,另一种是使用 foreach,那如果问你,这两种方式哪一种效率最高,你的回答是什么呢?今天阿粉就来带你看一下。
从长远发展来看,我是应该学 Java 还是 C/C++ 或者是 Python?
网上有一句话是这么说的:如果你不知道学什么语言的时候,那么就学 Java。
成为程序员之后你明白了什么?
如果问你成为程序员以来,你明白了哪些道理,你的回答会是什么呢?
知乎上面有个提问,问题是成为程序员后你都明白什么?获取的几十万的浏览量。

首赞的一个回答是引用了阮一峰老师的一个博文,是翻译美国最大的论坛 Reddit 之前的一个热帖,是一个喝醉了的十年工作经验的程序员写下来的,堪称是程序员的酒后真言。
每个后端都应该知道的八个提升 SQL 性能的 Tips
作为一名后端程序员,可以说天天都要跟数据库打交道,不管使用的是 MySQL, Oracle 还是 SQL Server,毫无疑问都逃不开 SQL,所以日常工作中对于 SQL 的性能优化可谓说十分重要。今天阿粉就带大家看一下,每个后端程序员都应该知道的十个提升查询性能的技巧。
微软宣布正式关闭 IE浏览器,历时 28 年的 IE 浏览器走向了终点
提到 IE 浏览器大家能想到是什么呢?慢,慢,还是慢!近日有消息称微软将在 2022 年 6月 15 日正式关闭 IE 浏览器,届时更新了最新 Windows 系统的用户将无法在新系统上启用 IE 浏览器,只能说该来的总会来。
15 行 Java 代码实现一个标准输出的进度条,其中的知识点你知道但并不一定会用
最近阿粉在折腾一台服务器,折腾的过程中往往会需要安装很多依赖软件,有的是在官网下载压缩包,有的是通过系统命令直接安装,在通过系统命令直接安装的时候,就会有类似下面的进度条出现。