自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

编码行者的博客

失败是什么?没有什么,只是更走近成功一步;成功是什么?就是走过了所有通向失败的路,只剩下一条路,那就是成功的路。

  • 博客(474)
  • 资源 (2)
  • 收藏
  • 关注

原创 如何在不同平台上安装 Gradle

Gradle 是一种先进的构建自动化工具,广泛应用于 Java 项目开发。无论你是在 Windows、macOS 还是 Linux 上开发,安装 Gradle 都是你开始高效构建项目的第一步。本文将介绍如何在不同平台上安装 Gradle。

2024-07-29 18:01:57 356

原创 在 macOS 上使用 Homebrew 安装和配置 Python 及 Tk 库

在 macOS 上,系统自带的版本较旧,且直接升级系统自带的 Python 版本可能会影响系统稳定性。因此,推荐使用 Homebrew 来安装和管理 Python 及其相关库。本文将详细介绍如何通过 Homebrew 安装和配置 Python 3 及 Tk 库,并设置全局python命令。

2024-06-14 13:51:28 1437

原创 深入理解防抖函数:实现一个完美的 JavaScript 防抖类

防抖函数的基本原理是:在连续触发事件的过程中,只在最后一次事件触发后的一段时间内调用目标函数。这样可以有效减少高频率事件的处理次数,提升性能表现。通过本文的介绍,我们不仅理解了防抖函数的原理,还学习了如何实现一个功能完备的防抖函数类。这个类不仅满足防抖的基本需求,还提供了更多的控制和统计功能,适用于各种前端开发场景。希望这个防抖函数类能为你的项目带来帮助。如果你有任何疑问或建议,欢迎在评论区留言讨论。

2024-06-05 11:59:08 426 1

原创 Java CompletableFuture 实战应用指南

在现代应用开发中,异步编程和并发任务处理变得越来越重要。Java 8 引入的为我们提供了一个强大且灵活的工具来简化这一过程。在本文中,我们将结合各种实战场景,详细介绍的核心API及其应用。

2024-06-05 10:00:47 747

原创 在Spring Boot中集成H2数据库:完整指南

H2数据库是一个轻量级的、开源的SQL数据库,非常适合用于开发和测试。本文将指导您如何在Spring Boot应用程序中集成H2数据库,并探索一些高级配置选项。H2数据库与Spring Boot的集成非常流畅,提供了一个轻量级且功能丰富的解决方案,非常适合开发和测试。通过本文的指南,您应该能够轻松地在Spring Boot应用程序中集成H2数据库,并利用其强大的功能。通过以上步骤,您可以在Spring Boot项目中成功集成H2数据库,并使用其强大的功能进行开发和测试。首先,我们需要在项目的。

2024-05-30 10:22:50 2329

原创 在 Spring 框架中处理循环引用和 Bean 覆盖

在 Spring 框架中,通过配置和选项,可以有效地解决循环引用和 bean 覆盖的问题,从而提高应用程序的灵活性和健壮性。然而,开发者在使用这些选项时应谨慎,尽量避免设计上的循环依赖和不必要的 bean 覆盖,以保持代码的简洁和可维护性。通过合理的架构设计和配置管理,可以更好地发挥 Spring 框架的优势,构建高效、可靠的企业级应用程序。

2024-05-30 10:11:44 456

原创 Spring Boot 中的HTTP请求方式详解:优缺点与代码示例

在Spring Boot中,适用于简单的同步请求,WebClient适用于高并发和异步处理场景,而则可以用于已有代码需要异步处理的场景。根据具体的应用需求选择合适的工具可以提高代码的性能和可维护性。

2024-05-26 18:16:49 1108

原创 在Spring Boot项目中集成和使用MQTT

MQTT协议的请求报文头非常轻量级。MQTT协议定义了固定报文头和可变报文头两部分。

2024-05-23 13:05:44 2871 1

原创 Oracle JSON 函数详解与实战

Oracle 数据库提供了丰富的 JSON 函数集,使得开发者可以高效地处理 JSON 数据。本文将详细介绍这些函数,包括它们的语法、使用场景、具体示例,以及在实际项目中的应用。

2024-05-22 17:56:31 2799 1

原创 「Spring 缓存最佳实践」Caffeine 与 Redis 分层缓存架构

在 Spring 应用中,通过结合使用 Caffeine 和 Redis 缓存,我们可以构建出高效、可扩展的分层缓存架构。同时,合理设计缓存策略、防范常见的缓存问题,并持续进行监控和调优,是获得最佳缓存效果的关键。在上面的示例中,我们优先从 Caffeine 本地缓存中获取用户数据,如果未命中则尝试从 Redis 远程缓存中获取。除了使用 Spring 提供的缓存实现外,我们还可以自定义组合缓存,将 Caffeine 和 Redis 进一步结合,形成更加灵活的分层缓存架构。注解,或手动编码回写逻辑。

2024-05-11 10:03:12 625

原创 使用策略模式实现 Spring 分布式和单机限流

我们可以使用策略模式来统一单机限流和分布式限流的实现,提高代码的可扩展性和可维护性。思路是定义一个 接口,并分别实现单机限流策略 和分布式限流策略 。在 AOP 切面中,根据配置决定使用哪种限流策略。实现单机限流策略实现分布式限流策略修改切面逻辑在切面逻辑中,我们注入了 的实现类。根据配置决定使用单机限流还是分布式限流策略。在使用时,我们只需要在方法上标注 注解即可,而不需要关心底层使用的是单机限流还是分布式限流。在 Spring 配置中,我们可以根据需求注入不同的 实现类:通过

2024-04-17 17:02:55 613

原创 使用 Spring AOP 和 Guava RateLimiter 实现 API 限流

其次,定义一个// 每秒钟生成令牌的速率 long timeout() default 0;// 尝试获取令牌的超时时间 TimeUnit timeUnit() default TimeUnit . SECONDS;// 超时时间单位 }// 每秒钟生成令牌的速率 long timeout() default 0;// 尝试获取令牌的超时时间 TimeUnit timeUnit() default TimeUnit . SECONDS;// 超时时间单位 }

2024-04-17 16:57:45 764 1

原创 Spring Boot 框架集成Knife4j

本次示例使用 Spring Boot 作为脚手架来快速集成 Knife4j,Spring Boot 版本。RequestHandlerSelectors.basePackage 要改成你自己的。pom.xml 完整文件代码如下。第一步:在 maven 项目的。,Knife4j 版本。,完整代码可以去参考。

2024-04-11 21:08:28 805

转载 通过方法引用获取属性名的底层逻辑是什么?

Book::getId 这就是方法引用,松哥之前也专门写过文章介绍相关内容,这里就不再多说。这里我们就单纯来说说为什么 MP 通过 Book::getId 就可以识别出来这里的属性名。

2024-04-07 15:28:13 86

原创 深入理解MySQL中的utf8、utf8mb4和排序规则

在MySQL中,字符集和排序规则是两个非常重要的概念,它们决定了数据库如何存储和比较字符串数据。今天我们来探讨一下MySQL中几种常用的字符集和排序规则之间的区别和适用场景。

2024-04-07 14:07:28 959

原创 VueDraggablePlus 支持 Vue2 和 Vue3 的拖拽组件

官网:https://alfred-skyblue.github.io/vue-draggable-plus/

2024-04-07 09:53:00 772

原创 使用 CSS 实现毛玻璃效果

在现代 Web 设计中,毛玻璃效果越来越受欢迎。它能够让界面元素看起来更加柔和、朦胧,同时又不会完全遮挡背景内容,给人一种透明而又不失质感的视觉体验。虽然过去实现这种效果需要借助图像编辑软件,但现在只需要几行 CSS 代码,就可以在网页上呈现出令人惊艳的毛玻璃效果。

2024-03-19 14:58:33 8703

原创 在 Vue.js 3 中封装全屏功能工具类

在本文中,我们学习了如何在 Vue.js 3 中使用 Composition API 封装全屏功能的工具类。虽然这个示例相对简单,但它展示了将特定功能抽象成可复用的工具类的好处。通过这种方式,我们可以提高代码的质量和可维护性,并在不同的组件中轻松共享相同的逻辑。如果你对这种封装方式有任何疑问或建议,欢迎在评论区留言讨论。我也鼓励你尝试封装其他常见的功能,以进一步提高自己的编码技能。

2024-03-19 14:08:37 972

原创 深入理解 Linux 函数参数

在Linux Shell编程中,函数是一种非常有用的功能,它可以将重复的代码封装起来,提高代码的可重用性和可维护性。在本文中,我们将探讨Linux Shell函数及其参数的相关知识。

2024-03-18 11:13:36 1099

原创 如何优雅地处理Web应用中的大文件上传

通过文件分片、后台计算和SHA-256散列值验证,我们不仅优化了大文件的处理和上传过程,还确保了数据的安全性和完整性。以上实现方式展示了现代Web技术如何解决传统问题,提升用户体验,同时保障数据处理的效率和安全。希望这篇博客能够帮助你理解和实现在Web应用中处理大文件的最佳实践。

2024-03-08 16:56:34 1437 2

原创 Web密码输入框:安全性、可用性与最佳实践全解析

在Web开发中,保护用户密码的安全性至关重要。本文全面解析了的使用技巧、属性的应用、视觉反馈、防止密码泄露、提高可访问性、客户端验证等方面的最佳实践,并结合实际代码示例。

2024-03-08 15:45:02 920

原创 优化Web应用的中文输入体验

在构建面向中文用户的Web应用时,提供流畅的输入体验至关重要。由于中文字符的输入通常依赖于输入法编辑器(IME),这使得实现响应式和准确的输入事件监听变得更加复杂。本文将探讨如何通过JavaScript优化中文输入体验,特别是如何准确处理和事件来提升用户体验。

2024-03-08 13:36:28 809

原创 探索Web中的颜色选择:不同取色方法的实现

对于需要更多控制和自定义外观的场景,你可以使用元素配合JavaScript来创建自定义的颜色选择器。

2024-03-08 13:23:04 1135

原创 Linux权限系统深度解析

深入理解和应用Linux权限系统,不仅能保。

2024-03-08 13:03:40 494

原创 使用 ResolvableTypeProvider 进行类型解析

是 Spring Framework 中的一个接口,它定义了一个方法,该方法返回一个对象。是 Spring 提供的用于描述 Java 类型信息的工具类,它可以处理泛型、数组、嵌套类型等情况。接口为我们提供了一种灵活且强大的方式来处理类型解析,特别是在使用 Spring Framework 进行开发时。通过实现这个接口,我们能够更好地利用 Spring 提供的类型处理工具,简化代码并提高可维护性。希望本文能够帮助你更好地理解和应用接口。如果你有任何疑问或建议,欢迎在评论区留言。

2024-03-06 13:43:58 641

原创 分析SSH登录日志

SSH(Secure Shell)是远程连接服务器的常用工具,通过查看系统的认证日志,我们可以了解到系统上的SSH登录活动。总结起来,这个命令帮助系统管理员追踪SSH登录活动,尤其是关注失败的认证尝试。通过分析登录频率,管理员可以及时发现异常登录行为,加强系统的安全性。通过运行这个命令,我们可以得到一个按照SSH登录次数排序的IP地址列表。:按照出现次数进行逆序排序,以便最高频次的IP地址在前面显示。:统计每个唯一的IP地址出现的次数,并在前面显示出现次数。:对提取出的IP地址进行排序。

2024-03-06 10:39:49 1104

原创 解决Linux删除大量文件时的“Argument list too long“错误

在Unix/Linux系统中,使用rm命令删除大量文件时,很容易遇到一个常见的问题,即"Argument list too long"。这个错误通常发生在命令行参数列表过长的情况下,特别是在文件数量过多的情况下。本文将探讨这个问题的起因,并提供一个有效的解决方案,通过使用find命令结合来规避这一错误。

2024-03-04 17:12:41 1435

原创 文件搜索与性能优化:`find` 命令的多种用法比较

在Linux系统中,find命令是一个功能强大的工具,用于查找文件和目录。然而,在实际应用中,我们经常面临对性能进行优化的需求,尤其是在搜索大型文件系统时。本文将探讨在使用find命令进行文件搜索时的多种实现方式,并对它们的性能和优缺点进行比较。

2024-03-04 17:07:20 654

原创 打造无缝滚动体验:JavaScript中的scrollIntoView()方法实战指南

通过本文的指南和实例,你将能够充分理解如何运用方法,从而提升用户在你的网页上的滚动体验。不仅如此,这些实战示例也能帮助你更好地应用这一特性到你的项目中,创造出令人难忘的用户交互效果。让我们一起深入JavaScript的滚动世界,打造出无与伦比的网页体验吧!

2024-03-01 14:10:41 1517

原创 探索CSS中的宽度设置:width: 100% 与 width: auto 的区别

的设置更注重元素内容的大小。当你希望元素的宽度根据其内部内容的多少自动调整时,这是一个理想的选择。默认情况下,块级元素会尽可能地占满父元素的宽度,但也会根据内容的需要动态调整。在前端开发中,CSS的样式规则是我们创建各种布局和设计的关键。在这个过程中,设置元素的宽度是一个常见的任务。本文将深入探讨这两者之间的区别以及它们在实际开发中的应用。在许多情况下,我们希望元素占据其父元素的整个宽度,以实现响应式设计。的元素充满其父元素的宽度,确保在不同屏幕尺寸下都能适应。的元素根据其内部内容的大小动态调整宽度。

2024-02-28 11:22:44 3110

原创 使用 JMimeMagic 在 Java 中识别文件类型

在 Java 中,我们可以使用 JMimeMagic 库来识别文件类型,尤其是在需要准确区分文件类型时。下面是一个简单的使用 JMimeMagic 的示例代码。

2024-02-19 16:00:26 647

原创 Java Commons模块详解:提高开发效率的工具集合

Java Commons 是一个开源的 Java 库集合,其中包含了一系列实用工具和功能模块,可以大幅提高 Java 应用程序的开发效率。本文将为您详细介绍几个常用的 Commons 模块,帮助您了解它们的功能和用法,为您的开发工作提供便利。

2024-01-24 16:37:46 1005

原创 深入了解 Java 中的 Class.cast 方法

Class.cast方法为我们提供了一种安全而可靠的类型转换方式,可以在运行时进行类型检查,避免了类型不匹配导致的问题。然而,在实际编程中,应尽量设计良好的类层次结构和接口,以减少类型转换的需要。通过深入了解和合理运用Class.cast方法,我们可以在 Java 编程中更加灵活地处理对象类型,提高代码的可维护性和可读性。

2024-01-24 16:18:46 1208

原创 Java内省与反射:灵活操作JavaBean属性的利器

Java内省是一种动态获取JavaBean信息的机制,通过内省,我们可以在运行时检查、获取和修改JavaBean的属性,而无需了解其具体实现。主要通过类和类实现。Java内省是一种强大的反射机制,为我们提供了在运行时获取和操作JavaBean属性的便捷方式。通过和等类,我们能够动态地获取属性信息,使得JavaBean的操作更加灵活。在实际项目中,合理使用内省可以提高代码的可维护性和灵活性。完整demo// 获取Person类的BeanInfo对象。

2024-01-24 16:14:23 484

原创 消除 fetch 异步传染性

优化之前我们会发现,我有一个fetch请求返回promise,我要获取和数据我就得 用await ,用了await 当前函数必须是个async 如此循环往复调用,接下来所有的方法都要加上 async await,这就叫。,我们可以用react 父组件加载子组件的原理。// 自定义 fetch 消除 异步传染性。// 使用json()方法解析响应数据。// // 检查网络请求是否成功。//缓存旧的fetch。// 重写fetch。

2023-12-28 15:27:54 517

转载 Chrome 浏览器资源缓存策略深度讲解-转官网

一般来说,缓存可以通过存储数据来提高性能,这样将来针对相同数据的请求可以更快地得到处理。例如,通过网络缓存资源可以避免往返服务器。缓存的计算结果可以省略执行相同计算所需的时间。在 Chrome 中,缓存机制以各种方式使用,HTTP 缓存便是一个示例。

2023-12-27 15:38:33 533

原创 深入探索Web浏览器端跨标签页通信:方法、优缺点及实践

现代Web开发中的跨标签页通信是一个多样化且复杂的话题。通过结合LocalStorage、Broadcast Channel API、SharedWorker、

2023-12-22 14:07:43 985

原创 深度解析DOM尺寸与位置:clientWidth、offsetWidth、scrollWidth、getBoundingClientRect() 一网打尽

获取元素内容区域的宽度,不包括边框和滚动条。:获取元素相对于其父元素的偏移宽度,包括边框、内边距和滚动条。:获取元素内容的总宽度,包括溢出的部分。:获取元素相对于视口的位置和大小信息。在实际应用中,根据具体的需求选择合适的属性或方法来获取元素的尺寸和位置信息,可以更灵活地处理 DOM 操作。

2023-12-20 13:55:01 994

原创 Linux目录创建的高级操作技巧和命令

在Linux系统中,创建目录是日常操作中的基础之一。除了常规的mkdir命令,还有一些高级的操作技巧和命令可以提高效率。本博客将介绍一些常用的目录创建方法,以及如何结合不同命令实现更复杂的目录结构。

2023-12-12 16:07:17 449

原创 基于Maven的Spring Boot应用版本号获取解析

在Spring Boot应用的开发和部署中,了解应用的版本号对于管理和监控应用至关重要。本文将深入解析一种基于Maven打包的Spring Boot应用中,根据不同的运行环境获取应用版本号的解决方案。这种灵活的解决方案能够确保在不同的部署环境中都能获取到正确的应用版本号,为开发者提供了更好的应用管理和监控手段。获取JAR文件的路径,然后遍历JAR包中的条目,寻找包含版本信息的。通过解析类文件的路径,我们可以得到应用在文件系统中的基本路径。文件的路径,然后通过文件流获取其中的版本号信息。

2023-12-06 18:33:40 918

爬取知乎专栏文章并生成PDF css文件

https://blog.csdn.net/mbh12333/article/details/103264866

2019-11-26

Java内嵌式Tomcat-TomcatDemo

这是一个Java内嵌式 Tomcat的Demo。详细文章请见我的博客

2018-12-12

空空如也

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

TA关注的人

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