除了递归算法,要如何优化实现文件搜索功能

9 月 23 日
阅读 10 分钟
195
以下是一个使用 Java 实现的文件搜索功能,它会在指定目录及其子目录中搜索包含特定关键字的文件。此实现使用递归方式遍历目录,并可以使用文件名或内容搜索文件。

程序员带娃神器,写一个贪吃蛇网页游戏给娃玩

9 月 19 日
阅读 8 分钟
237
这个中秋可是悲催,别人放假,我还得在家办公写项目,带娃的时间都没有,这不,娃要缠着陪她玩积木游戏,哎,心中有事,陪娃都陪不好,咋整,灵机一动,先搞个小游戏让娃耍个把小时,毕竟孩子长时间对着电脑不好,写个贪吃蛇吧,能玩很久。

好用!推荐一个开源加密库 Bouncy Castle

9 月 18 日
阅读 9 分钟
745
Bouncy Castle是一个广泛使用的开源加密库,它为Java平台提供了丰富的密码学算法实现,包括对称加密、非对称加密、哈希算法、数字签名等。这个库由于其广泛的算法支持和可靠性而备受信任,被许多安全应用和加密通信协议所采用。

【好文】反模式:10种滥用设计模式案例分析

9 月 9 日
阅读 24 分钟
176
Hello,大家好,我是V哥。很多文章都在介绍设计模式怎么用,讲解设计模式的原理等等,设计模式的思想是编程中的精髓,用好了可以让代码结构利于维护和扩展,同时代码风格也更加优雅,V 哥也写过这样一篇文章,但很少有人从反模式的角度来讲一讲,过度滥用设计模式将给项目带来灾难。

瞬时流量过大,如何实现服务熔断、降级和限流

9 月 6 日
阅读 7 分钟
243
大家好,我是V哥,国足0-7不敌日本,创下12年来最大惨败,真的好久不看球赛了,我关心的是,作为国内唯一一家转播平台爱奇艺体育昨天崩了,官方道歉文中解释由于瞬时流量过大导致,这让我想起服务熔断、降级和限流是微服务架构中用于提高系统稳定性和可用性的三种关键策略。

使用 Nacos 实现动态路由

9 月 4 日
阅读 7 分钟
347
Hello,大家好,我是 V 哥。最近写到 使用 Nacos 实现动态路由的问题,整理了一下思路和案例,分享给大家。使用 Nacos 实现 Spring Cloud Gateway 的动态路由,主要涉及到以下几个步骤:添加依赖:在 Spring Cloud Gateway 应用的 pom.xml 文件中添加 Nacos 相关依赖。配置 Nacos:在 application.yml 或 application.pr...

OpenFeign深入学习笔记

9 月 3 日
阅读 21 分钟
469
OpenFeign 是一个声明式的 Web 服务客户端,它使得编写 Web 服务客户端变得更加容易。OpenFeign 是在 Spring Cloud 生态系统中的一个组件,它整合了 Ribbon(客户端负载均衡器)和 Eureka(服务发现组件),从而简化了微服务之间的调用。

ECharts实现雷达图详解

9 月 2 日
阅读 8 分钟
639
ECharts 是一款由百度开源的数据可视化工具,它提供了丰富的图表类型,如折线图、柱状图、饼图、散点图、雷达图、地图、K线图、热力图、仪表盘等,以及丰富的交互功能。ECharts 组件的核心功能实现原理主要包括以下几个方面:

【金九备战】Spring Cloud Consul 面试题

8 月 28 日
阅读 6 分钟
216
在面试中,你有没有被问到 Spring Cloud Consul 相关的问题呢?针对这个问题,我需要了解 Consul 的基本概念、核心功能、与 Eureka 和 Zookeeper 的区别、服务注册和发现机制、以及健康检查配置等,这些是展示你的技术功底和对微服务架构理解的考验,废话不多说,以下这些内容都是要清楚的。

金融系统中Java如何处理大量的交易和请求

8 月 27 日
阅读 5 分钟
258
在金融服务行业中,例如一个股票交易平台,它需要处理大量的买入和卖出请求,交易逻辑会涉及数据库交互、错误处理和事务管理等方面的复杂性。这就是一个 Java 多线程能力的点型应用了,V 哥从项目中剥离了这个案例,分享给你参考。

Tomcat的配置文件中有哪些关键的配置项,它们分别有什么作用?

8 月 26 日
阅读 20 分钟
337
Tomcat的配置文件主要包括server.xml和web.xml,它们位于Tomcat安装目录下的conf文件夹中。今天的内容重点介绍 server.xml 文件的配置,V 哥会结合一些业务场景来介绍,希望可以帮助到你,以下是一些关键的配置项及其作用:

MinIO的分布式系统是如何确保数据一致性的?

8 月 23 日
阅读 17 分钟
364
MinIO是一个高性能的开源对象存储服务器,它与Amazon S3兼容,适用于存储备份、大数据分析等多种应用场景。MinIO追求高性能和可靠性,采用去中心化的架构设计,不依赖任何单个节点,即使某些节点发生故障,整个系统也能正常运行 。它还支持分布式部署,可以轻松扩展存储容量和性能。

Vue状态管理库Pinia详解

8 月 22 日
阅读 15 分钟
684
Pinia 是 Vue 的状态管理库,它提供了一种更简单、更不规范的 API 来管理应用的状态。Pinia 的设计哲学是简单性和易用性,它避免了 Vuex 中的许多复杂概念,如 mutations 和模块的嵌套结构,提供了一种更现代、更符合 Vue 3 Composition API 风格的状态管理方式。

为什么用Vite框架?来看它的核心组件案例详解

8 月 22 日
阅读 15 分钟
374
Vite 是一个前端构建工具,它以其快速的开发服务器和生产优化的打包器而闻名前端界,今天的内容,必须得唠唠 Vite 的关键能力,以下是 Vite 的核心组件分析,以及使用案例:
封面图

用到爽,Markdown 语法一览表

8 月 20 日
阅读 2 分钟
755
Markdown是一种轻量级的标记语言,它允许人们使用易读易写的纯文本格式编写文档,然后转换成结构化的HTML。以下是Markdown的一些基本语法和示例:
封面图

推荐被Stars5.8k的Java框架RuoYi

8 月 19 日
阅读 2 分钟
344
一直想做一款后台管理系统,看了很多优秀的开源项目但是发现没有合适的。于是利用空闲休息时间开始自己写了一套后台系统。如此有了若依。她可以用于所有的Web应用程序,如网站管理后台,网站会员中心,CMS,CRM,OA。所有前端后台代码封装过后十分精简易上手,出错概率低。同时支持移动客户端访问。系统会陆续更新一些实...

12种ECMAScript性能优化技巧与避坑

8 月 16 日
阅读 18 分钟
544
ECMAScript(简称 ES)是 JavaScript 的标准,它定义了语言的语法、类型、语句、关键字、保留字、操作符、对象。随着 ES6(也称为 ES2015)及之后版本的推出,JavaScript 增加了许多新特性,同时也带来了性能优化的新机会和潜在的陷阱。今天的内容,整理了一些性能优化技巧和需要注意的陷阱分享给大家,欢迎评论区讨论,...
封面图

深入理解Base64的用法和原理

8 月 14 日
阅读 13 分钟
727
Base64 是一种编码方法,用于将二进制数据转换成64个可打印的ASCII字符的序列。这种编码方式广泛应用于在文本格式中存储二进制数据,例如在 URL、文件名、或在 XML 和 JSON 文档中。Java 中的 Base64 编码和解码通常可以通过 java.util.Base64 类实现,这个类在 Java 8 及以后的版本中提供。

90%的人没用过的超读写能力、低延迟和高吞吐量的一款NoSQL

8 月 13 日
阅读 8 分钟
311
Aerospike支持T级别的大数据存储,并且能够处理高并发的数据访问,读写操作达到微妙级别,99%的响应可以在1毫秒内完成 。Aerospike 的架构设计允许它直接访问SSD的原始块,优化了数据的读取速度,同时支持二级索引和客户端聚合,提供了类似SQL的查询语言(AQL),这使得它在某些方面比其他NoSQL数据库更具优势。

通过JUnit源码分析学习编程的奇技淫巧

8 月 12 日
阅读 26 分钟
318
打开 Maven仓库,左边选项栏排在第一的就是测试框架与工具,今天的文章,V 哥要来聊一聊程序员必备的测试框架JUnit 的源码实现,整理的学习笔记,分享给大家。
封面图

Java RMI技术详解与案例分析

8 月 6 日
阅读 7 分钟
407
Java RMI(Remote Method Invocation)是一种允许Java虚拟机之间进行通信和交互的技术。它使得远程Java对象能够像本地对象一样被访问和操作,从而简化了分布式应用程序的开发。一些应用依然会使用 RMI 来实现通信和交互,今天的内容我们来聊聊 RMI 的那些事儿。

Python与c,JAVA相比,最大的问题在哪?

8 月 6 日
阅读 1 分钟
336
初学者在学习时,都在纠结学啥好,关于Python、C和Java是三种非常流行的编程语言,进入了选择困难症,那是因为你要先了解它们各自有独特的优势和劣势,再让自己有更好的选择。Python与C和Java相比,可能面临以下一些挑战或问题:

【读源码】Netty框架Future模式源码深度剖析

8 月 2 日
阅读 4 分钟
274
Netty 是一个高性能的网络编程框架,广泛用于构建高性能、高可靠性的网络服务器和客户端程序。它的核心特性之一是其异步编程模型,而这种模型是通过 Future 模式实现的。

spring为什么使用三级缓存而不是两级?

8 月 2 日
阅读 2 分钟
479
今天来聊一聊关于 Spring 为什么使用三级缓存的问题,先说结果哈,Spring框架中的三级缓存主要用于解决循环依赖问题,特别是在单例Bean的创建过程中。

Netty的源码分析和业务场景

7 月 30 日
阅读 12 分钟
869
Netty 是一个高性能、异步事件驱动的网络应用框架,它基于 Java NIO 构建,广泛应用于互联网、大数据、游戏开发、通信行业等多个领域。以下是对 Netty 的源码分析、业务场景的详细介绍:
封面图

Volatile不保证原子性及解决方案

7 月 19 日
阅读 3 分钟
296
原子性特别是在并发编程领域,是一个极其重要的概念,原子性指的是一个操作或一组操作要么全部执行成功,要么全部不执行,不会出现部分执行的情况。这意味着原子性操作是不可分割的,它们在执行过程中不会被其他操作中断或干扰。

一篇短文快速搞定Vim编辑器命令

7 月 17 日
阅读 1 分钟
294
Vim 是一个功能强大的文本编辑器,广泛用于编程和文件编辑。几乎后端程序员都离不开 Vim 吧,初学入行的小伙伴可要提前掌握哦,以下是V哥整理的 Vim 的一些基本用法和示例分享给大家。
封面图

Mojo 编程语言入门:AI开发者的新宠儿

7 月 16 日
阅读 4 分钟
393
Mojo编程语言并不是一个广泛认知的编程语言名称,在2024年之前,它没有在主流编程语言社区或人工智能领域中得到广泛的讨论或认可。随着AI的火爆,Mojo 成为了新的宠儿,V 哥今天的文章就来介绍一下 Mojo 编程语言的入门知识和案例,兄弟们可以通过以下内容快速上手 Mojo语言。
封面图

Redis数据结构—跳跃表 skiplist 实现源码分析

7 月 12 日
阅读 3 分钟
284
Redis 是一个开源的内存数据结构存储系统,它可以用作数据库、缓存和消息中间件。Redis 的数据结构非常丰富,其中跳跃表(skiplist)是一种重要的数据结构,它被用来实现有序集合(sorted sets)。
封面图

Java Executors类的9种创建线程池的方法及应用场景分析

7 月 11 日
阅读 15 分钟
843
在Java中,Executors 类提供了多种静态工厂方法来创建不同类型的线程池。在学习线程池的过程中,一定避不开Executors类,掌握这个类的使用、原理、使用场景,对于实际项目开发时,运用自如,以下是一些常用的方法,V哥来一一细说:
封面图