自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

致力于分享技术干货

  • 博客(126)
  • 资源 (16)
  • 收藏
  • 关注

原创 还在用JDK8?JDK8、JDK11升级至JDK17的重要特性:一次价值千万的全方位升级指南

本文分析了从JDK 11升级至JDK 17的必要性和主要新特性。升级必要性体现在:JDK 17作为LTS版本提供更长期支持;Spring框架6.x/3.x要求最低JDK17;性能提升显著(G1GC提升8.66%)。核心语言特性包括:正式版Switch表达式简化多分支逻辑、文本块改善多行字符串处理、instanceof模式匹配消除冗余类型转换。这些改进提升了开发效率、代码可读性和安全性。随着Spring生态全面转向JDK17,建议开发者及时升级以获取更好的支持和性能。

2025-10-31 22:26:09 705

原创 还在用JDK8?JDK8升级JDK11:一次价值千万的升级指南

JDK 8到JDK 11的重要升级特性摘要:随着JDK更新至25版本,SpringBoot 3.x要求最低JDK17,开发者需关注版本升级。JDK 11作为长期支持版本(LTS)引入多项特性:接口支持私有方法(JDK9)、局部变量类型推断(var关键字,JDK10)、Lambda参数使用var(JDK11)。此外,JDK9改进了集合、Stream和Optional,新增工厂方法创建不可变集合、Stream的ofNullable等新方法,以及Optional增强功能。这些改进简化了代码编写,提高了开发效率。

2025-10-31 22:21:19 809

原创 SpringBoot 如何实现零拷贝:深度解析零拷贝技术

如果服务端要提供文件传输的功能,我们能想到的最简单的方式是:将磁盘上的文件读取出来,然后通过网络协议发送给客户端。传统 I/O 的工作方式是,数据读取和写入是从用户空间到内核空间来回复制,而内核空间的数据是通过操作系统层面的 I/O 接口从磁盘读取或写入。

2025-10-22 23:18:40 770

原创 JWT 真的安全吗?深度讲解 JWT 优缺点与避坑指南

JWT 其中一个很重要的优势是无状态,但实际上,我们想要在实际项目中需要合理使用 JWT 做 Token 认证登录的话,也还是需要集中存储 JWT 信息。这就意味着 JWT 的无状态是一个空中楼阁。JWT 也不是银弹,也有很多缺陷,具体是选择 JWT 做 Token 认证,还是选择传统的不透明 Token 方案,只能说根据项目的实际情况。万万不可尬吹 JWT,而看不起其他身份认证方案。

2025-10-22 00:42:32 1051

原创 SpringBoot 接入 Prometheus + Grafana

欢迎从事编程开发、技术招聘 HR 进群,欢迎大家分享自己公司的内推信息,相互帮助,一起进步!架构设计之道在于在不同的场景采用合适的架构设计,架构设计没有完美,只有合适。在代码的路上,我们一起砥砺前行。—— 斩获心仪Offer,破解面试密码 ——点击 Import,即可看到监控仪表。

2025-10-19 23:16:43 495

原创 排序算法:详解插入排序

插入排序是一种简单直观的排序算法,它的工作原理类似于我们整理扑克牌,将每个新元素插入到已排序部分的正确位置。

2025-10-18 23:22:17 334

原创 排序算法:详解快速排序

快速排序是一种高效的分治排序算法,由Tony Hoare在1960年提出。它的核心思想是"分而治之",通过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,然后分别对这两部分记录继续进行排序,以达到整个序列有序。

2025-10-18 22:52:03 522

原创 排序算法:详解冒泡排序

冒泡排序是一种简单的排序算法,它通过重复遍历要排序的数列,比较相邻元素并交换位置,使较大的元素逐渐"浮"到数列的末端。

2025-10-18 22:23:43 273

原创 为什么大厂面试官独爱堆排序?堆排序保姆级教程:从入门到精通

堆是一种特殊的完全二叉树,它满足以下性质:大顶堆:每个节点的值都大于或等于其子节点的值小顶堆:每个节点的值都小于或等于其子节点的值大顶堆示例:50/ \45 40/ \ /30 20 35数组表示:[50, 45, 40, 30, 20, 35]索引关系:对于节点i,其左子节点在2i+1,右子节点在2i+2,父节点在(i-1)/2学习堆排序,不仅是学习排序的技巧,更重要的是学习堆这个数据结构。用数组表示树:通过简单的索引计算,可以用线性结构表示复杂的树形关系。

2025-10-18 15:41:14 679

原创 SpringBoot 启动时执行某些操作的 8 种方式

在真实项目开发过程中,我们经常会需要在程序启动时执行一些特定的业务操作,比如系统预热、系统初始化等。小编为大家介绍 8 种实现方式。

2025-10-16 23:02:33 1033

原创 新一代Java应用日志可视化与监控系统开源啦

Java 应用开发的同学都知道,项目上线后,日志的可视化查询、接口的性能监控、 JVM 的可视化监控是一件非常重要的事。市面上成熟方案一般是采用 ELK/EFK 实现日志可视化,采用 Actuator + Prometheus + Grafana 实现 JVM 监控。这两套都是非常优秀的解决方案,不过对于很多开发者来说,这中间存在大量的繁琐的配置过程。而对于大多数中小型企业来说,很多都是一个简单的单体项目,并不想要多余的运维和部署成本!而智能应用监控。

2025-10-16 22:48:19 1364

原创 蚂蚁又开源了一个顶级 Java 项目!

蚂蚁集团开源基于LLVM的JVM JIT编译器"Jeandle(筋斗云)",旨在提升Java应用性能。该项目将LLVM的优化能力引入JVM,通过即时编译技术将热点Java字节码转换为高效机器码。Jeandle面临支持Java特性(GC、异常处理等)的技术挑战,但有望带来显著性能提升和生态扩展。目前项目处于早期阶段,计划逐步完善功能支持。这一创新可能改变Java在AI、大数据等领域的性能表现,保持Java在现代计算环境中的竞争力。

2025-09-13 14:06:18 623

原创 SpringBoot 轻量级一站式日志可视化与JVM监控

【摘要】针对Java应用日志与JVM监控部署复杂的问题,"zero-observer+zero-log"提供了一套轻量级解决方案。该系统通过客户端zero-log实现无侵入式日志自动采集(支持logback输出),服务端zero-observer提供可视化查询界面。主要功能包括:应用日志检索、慢接口监控(支持自定义阈值)、JVM全指标监控。部署仅需引入依赖并配置logback,支持Docker快速搭建服务端,显著降低了中小型项目的运维门槛。

2025-09-13 14:03:36 1234

原创 Spring Boot中的中介者模式:终结对象交互的“蜘蛛网”困境

《中介者模式:解耦复杂对象交互的架构利器》摘要 中介者模式通过引入中间协调层,将网状对象交互转换为星型结构,有效解决系统组件间的高耦合问题。本文以电商订单系统为例,展示如何通过四大核心组件(中介者接口、具体中介者、同事类基类和具体同事类)实现支付、库存、物流等服务的解耦协作。在SpringBoot中,中介者模式不仅能简化微服务通信和分布式事务协调,还能管理UI组件交互。相比观察者模式和外观模式,中介者模式更适用于需要双向通信的复杂场景。文章还提供了中介者工厂、异常处理等进阶实践,并指出该模式在简单交互场景中

2025-07-10 22:05:54 1011

原创 Spring Boot中的代理模式:揭秘AOP背后的核心魔法

你是否好奇Spring Boot如何实现无侵入式的日志、事务和安全控制?本文将揭开代理模式的神秘面纱,展示其如何成为Spring生态的"隐形引擎"!

2025-07-10 21:54:14 1059

原创 还在用ELK?Springboot 轻量级日志采集与可视化查询工具开源啦!

Java应用开发时,服务器上的日志往往是以日志文件的形式存在。在日常维护时,通常需要将日志信息实现可视化查询。 ELK、EFK 等是优秀的日志可视化查询解决方案。不过对于部分开发者来说,日志的采集配置与日志可视化配置是一个比较繁琐的过程。 为此我们希望通过一些低门槛的方式,实现日志的自动采集与日志可视化查询。zero-observer 依托于 zero-log 的自动化日志采集插件,实现接收 Java 应用上报的日志数据,并提供开箱即用的日志可视化检索功能,极大降低了 Java 应用日志可视化检索的门槛。

2025-07-04 08:30:00 906

原创 深入解析 JDK jstack 命令:线程分析的利器

jstack是 Java 开发者必须掌握的诊断工具,能够快速定位线程相关的问题。生成和分析线程转储。诊断死锁、CPU 占用过高、线程阻塞等常见问题。使用高级工具优化分析效率。

2025-04-19 17:34:48 1685

原创 JVM 系列:JVM 内存结构深度解析

海量数据存储和性能优化。通用框架/组件设计与封装。如何设计合适的技术架构?如何成功转型架构设计与技术管理?在竞争激烈的大环境下,只有不断提升核心竞争力才能立于不败之地。留言【我要晋级】,一对一指导,带你晋级。

2025-04-19 09:00:00 1407

原创 JVM 系列:栈溢出

栈溢出问题往往与代码逻辑和JVM参数配置强相关。通过理解栈的运行机制、掌握诊断工具,结合合理的代码设计和参数调优,可有效规避此类异常。建议开发者在实现递归逻辑时始终保持警惕,并针对生产环境制定完善的监控策略。

2025-03-10 20:33:57 1047

原创 JVM 系列:堆内存溢出零基础

JVM 系列:堆内存溢出零基础教程

2025-03-10 20:31:41 891

原创 Spring 事务传播行为与隔离级别深度解析

Spring 事务传播行为与隔离级别深度解析

2025-03-03 20:27:16 1075

原创 基于Redis分布式缓存实现:从理论到实践

基于Redis分布式缓存实现:从理论到实践。主要包括基础的Redis缓存读写功能、缓存一致性保障方案、分布式锁等高级功能、性能优化与监控方案。

2025-03-03 20:15:36 168

原创 SQL优化实战:从慢如蜗牛到快如闪电的必杀技

SQL优化实战:从慢如蜗牛到快如闪电的必杀技

2025-03-01 18:27:54 530

原创 DeepSeek杀入编程圈:程序员集体失业?还是效率革命?

DeepSeek杀入编程圈:程序员集体失业?还是效率革命?

2025-03-01 17:38:50 1089

原创 揭秘Nginx监控黑科技:基于nginx-module-vts的流量全景监控实战指南

揭秘Nginx监控黑科技:基于nginx-module-vts的流量全景监控实战指南

2025-02-26 22:48:06 1285

原创 MongoDB索引全解析:从原理到实战的保姆级指南

MongoDB索引全解析:从原理到实战的保姆级指南

2025-02-26 22:17:33 727

原创 零基础入门!手把手教你在Linux服务器上安装Nginx,5分钟搭建高性能Web服务

零基础入门!手把手教你在Linux服务器上安装Nginx,5分钟搭建高性能Web服务

2025-02-24 23:01:25 379

原创 手把手教你为Linux服务器配置Nginx的HTTPS证书,小白也能轻松搞定!

手把手教你为Linux服务器配置Nginx的HTTPS证书,小白也能轻松搞定!

2025-02-24 22:39:18 548

原创 Zero-Log:扔掉 Logstash!0-1手把手实现轻量级日志采集框架

扔掉 Logstash!0-1手把手实现轻量级日志采集框架

2025-02-23 17:47:38 1551

原创 SpringBoot 低成本实现接口耗时监控!99%的人不知道还能这样做

SpringBoot 低成本实现接口耗时监控!通过拦截器完美实现。

2025-02-23 16:11:52 324

原创 SpringBoot 如何统一 API 响应格式

SpringBoot 如何统一 API 响应格式,包括异常统一处理

2025-02-22 22:55:16 730

原创 WEB 项目如何禁用 F12 等功能

WEB 项目如何禁用 F12 等功能,禁用右键、禁用 F12 按键、禁止任何键盘敲击事件、监控页面宽高

2025-02-22 20:28:31 1773

原创 MySQL主从同步延迟原因及解决办法

MySQL主从同步延迟原因及解决办法

2025-02-21 21:52:26 409

原创 Mac中双开微信

Mac中双开微信

2025-02-21 21:41:25 308

原创 Dockerfile 入门到精通

Dockerfile 入门到精通

2025-02-18 22:17:49 720

原创 全网最全 synchronized 锁分析

全网最全 synchronized 锁分析,死锁、活锁、阻塞锁、自旋锁、偏向锁、轻量锁、重锁、锁升级等底层原理解析。

2025-02-18 21:53:20 791

原创 SpringBoot 上传文件,10天后不能上传

SpringBoot 上传文件,10天后不能上传

2025-02-17 19:25:58 376

原创 SQL 优化工具使用之 explain 详解

SQL 优化工具使用之 explain 详解,SQL 性能优化如此简单!!!

2025-02-17 13:55:13 1825

原创 Dockerfile 编写推荐

Dockerfile 编写推荐

2025-02-16 17:12:54 1077

原创 Mac 开发工具推荐

Mac 开发工具推荐

2025-02-16 17:05:23 620

nginx-module-vts-0.2.2.tar.gz

nginx-module-vts-0.2.2.tar.gz

2025-02-26

精美 redis 客户端【TinyRDM-1.2.1-mac-arm64】自带监控 mac 版本 m 芯片 安装包

精美 redis 客户端【TinyRDM-1.2.1-mac-arm64】自带监控 mac 版本 m 芯片 安装包

2025-02-16

零基础搭建Hadoop大数据处理

手把手教大家零基础在如何在VM下建linux虚拟机,linux的基础知识,linux中安装jdk和配置环境变量请查看本人博客,搭建Hadoop大数据处理的环境。

2017-09-03

linux搭建postgresql、postgis、pg_pathman环境步骤以及需要的软件包

linux搭建postgresql、postgis、pg_pathman环境步骤以及需要的软件包

2017-08-06

mongodb-linux-x86_64-rhel70-3.4.10

mongodb-linux-x86_64-rhel70-3.4.10 mongodb的linux版本

2017-12-26

beetlsql的jar包

beetlsql的jar包

2017-07-22

JDK8-64位安装软件

官网JDK8-64位安装软件,一键安装。

2018-05-31

echart使用文档

echart使用文档

2017-05-31

echart插件

echart插件

2017-05-31

xmlrpc-client-3.1.jar

xmlrpc-client-3.1.jar

2017-07-30

apache-tomcat-7.0.81.tar.gz

apache-tomcat-7.0.81.tar.gz,linux下的Tomcat,7.0.81版本,解压即可,免安装版本。apache-tomcat-7.0.81.tar.gz

2017-09-01

jfinal-3.1API

jfinal文档

2017-08-01

hibernate 3.1.2中文开发文档

hibernate 3.1.2中文开发文档

2017-07-22

Eclipse安装JD-Eclipse反编译插件需要的jar

Eclipse安装JD-Eclipse反编译插件需要的jar

2017-07-29

jsonrpc4j-1.0.jar

jsonrpc4j-1.0.jar

2017-07-30

java反编译器

java反编译器

2017-08-05

SVN部署所有资料

SVN部署所有资料,包括jar包,文档,安装软件等

2017-07-30

maven与Tomcat绿色版

maven3.5.3与Tomcat8.5.31绿色版免安装软件。。。。。

2018-05-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除