Spring
-
这款插件让我的SpringBoot项目实现了热部署
点击上方蓝字关注我! 热部署 相信你肯定被【修改代码后还要重新部署项目才能测试】这个问题困扰过。有些大项目部署启动一次可能要花个几分钟,我们写完代码后需要自测,测试人员来测试,前后…
-
开源的高性能本地缓存-Caffeine
点击上方蓝字关注我! 高性能本地缓存 在将本地缓存前你肯定在想,本地缓存有么好讲的,不就是一个map么。把要缓存的数据存入map中,自己就能实现。但是这里有几个点我们要考虑: “ …
-
还记得我之前的代码生成工具么,这次我又给它升级了
点击上方蓝字关注我! 又升级啦 之前我自己写了个代码生成工具,为了能在创建实体时节省不必要的工作。当时我给这个工具升级了一次。有兴趣的同学可以看看我写的这篇文章: “ 还记得我之前…
-
聊聊什么是缓存雪崩和缓存穿透
点击上方蓝字关注我! 缓存雪崩 假如一个系统,它在高峰期有每秒7000个请求,这时我们使用缓存抗住了这么高的请求。但如果在某个时间点缓存大量失效,或者缓存服务器挂掉了,那么这些请求…
-
我的shell脚本实战-编写一个系统发布脚本
点击上方蓝字关注我! 平常我们会使用Jenkins发布系统,Jenkins可以从代码更新,编译到发布这样的一条龙服务。操作成本很低,作为程序员,肯定不满足于简单的界面操作。 于是我…
-
被Arrays.asList坑了后,我决定分析它的源码
点击上方蓝字关注我! 平时我们使用Arrays.asList()快速组装成List集合。比如我们将字符串或者数组转换成集合: String[] arrayStr …
-
我用注解优雅的实现了数据的脱敏
点击上方蓝字关注我! 1使用场景 你平时肯定做过这样的需求。要求展示用户的手机号,但是不能完全展示,需要在中间给手机号打码,如下图: 我们将关键数据做了适当隐藏,这样就叫数据脱敏。…
-
我用规则引擎实现了消除if语句
点击上方蓝字关注我! 1背景 我之前写了一篇关于使用注解和策略模式实现数据脱敏功能,其中使用策略模式用来消除if语句,实现业务与条件逻辑的解耦,有利于功能的扩展。 使用策略模式实现…
-
如何优雅的加密配置文件中的敏感信息
点击上方蓝字关注我! 为什么要加密配置文件信息 我们平时的项目中,会在配置文件中配置一些敏感信息,比如配置数据库账号、密码等信息。如果我们将配置文件与代码一起打包,别人拿到jar包…
-
如何开发一个轻量且高效的SDK
点击上方蓝字关注我! 背景 相信大家都使用过Maven,我们平时要使用公共的API,只需要导入Maven依赖即可。然后就可以直接调用里面的方法了,非常的方便。 最近的项目有个需求,…
-
为什么我写不出面向对象的代码
面向过程OR面向对象 面向过程的代码 在说面向对象前我们来说说什么是面向过程。什么是面向过程呢? “ 面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用…
-
基于注解的异步导入导出系统
相信大家做Excel导入导出功能,都会遇到大数据量超时问题。一般解决方法,采用异步操作,但每次都需要自己写异步的代码,为了减少重复不必要的工作,我决定开发一套基于注解的导入导出功能…
-
@EventListener注解是干什么的
@EventListener 是 Spring Framework 4.2 引入的一个注解,用于将方法声明为事件处理器,可以用于监听和响应应用程序中发布的事件。 使用 @…
-
【微服务-Sentinel】基于Nacos实现微服务架构的配置中心实战
前面的文章,我们介绍了Sentinel中熔断与限流的处理方式,了解了Sentinel对系统实施保护的原理。 这篇文章我们来一起看一下,如何基于Nacos集中管理应用配置,实现微服务…
-
Spring中基于代理实现的注解未生效解决方案
本文介绍Spring中在同一个类下进行方法调用时,注解可能失效的解决方案 abstract.png 概述 众所周知,当SpringBoot中一个类下有a、b两个方法时,如果该类内…
-
万字详解,带你彻底掌握 WebSocket 用法(至尊典藏版)
戳上方蓝字“Java知音”关注我 一、 简介 1.1 什么是WebSocket WebSocket是一种协议,用于在Web应用程序和服务器之间建立实时、双向的通信连接。…