自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

学无止境

学不止于学

  • 博客(912)
  • 收藏
  • 关注

原创 深入理解高并发编程 - 深度解析Thread 类的源码

Thread 类是 Java 标准库中用于创建和管理线程的核心类之一。它提供了一系列方法和功能,用于创建、启动、管理和控制线程的行为。通过继承 Thread 类并重写 run 方法,可以创建一个新的线程。调用 start 方法来启动线程,启动后会执行 run 方法中的代码。Thread 类定义了多个枚举类型 State,表示线程可能的不同状态,如 NEW、RUNNABLE、BLOCKED、WAITING、TIMED_WAITING 和 TERMINATED。

2023-08-23 22:19:34 1103 87

原创 【Spring Bean】

除了实现DisposableBean接口,我们还可以在bean的定义文件中通过配置自定义的销毁方法来销毁bean。需要在bean标签中设置destroy-method属性,并指定需要调用的方法名。在这个例子中,当bean销毁时,Spring会自动调用MyBean类中的cleanup()方法。总的来说,Spring框架提供了多种销毁bean的方式,使得我们可以根据具体的需求来选择最合适的方式来实现清理工作,从而提高应用程序的健壮性和稳定性。

2023-04-01 11:20:29 3067 135

原创 【百万数据导出EasyPOI、MySQL】

为什么是600多万?因为本来想整5000万来着,然后等了半天才600多万,不想等了,应该也够了。

2023-03-26 11:49:33 1855 27

原创 【Nacos案例】

【Nacos案例】

2022-11-20 17:34:04 1295 11

原创 对查询到数据操作后再进行分页

对查询到的数据操作后再进行分页

2022-06-22 08:52:22 4476 8

原创 Stream - Stream分组后并计算各项之和

1、Stream分组后并计算各项之和import static java.util.Comparator.comparing;/** * 分组后并计算各项之和 */ @Test public void testGroupByAndSum() { List<User> users = new ArrayList<>(); Boolean mulFlag = true; Map<String

2022-05-27 15:27:22 11614 13

原创 Stream - Stream对List集合多个字段进行去重并保存最新数据(最后一条数据)

1、第一步就是先进行反转List,因为stream流去重用的是TreeSet来进行去重的, 先进行反转List就是可以把最新数据放到最前面import java.util.*;import java.util.stream.Collectors;@Testpublic void test() { ArrayList<User> objects = new ArrayList<>(); objects.add();

2022-05-27 14:43:11 8405 5

原创 Java命令处理器:设计与实现

通过上述设计和实现,我们成功构建了一个简洁且易于扩展的命令处理器。这种设计不仅提高了代码的可读性和可维护性,还使得添加新命令或修改现有命令的行为变得异常简单。

2024-07-01 20:15:00 608 2

原创 Java获取所有时间差的Map、获取特定时间差

【代码】Java获取所有时间差的Map、获取特定时间差。

2024-05-09 21:30:00 542 4

原创 使用 Selenium 获取网页中的 Token

【代码】使用 Selenium 获取网页中的 Token。

2024-02-18 21:44:42 1530 11

原创 MySQL 聚合函数解析与示例

解释:这将返回"employees"表中工资最高的员工姓名,使用逗号和空格分隔。解释:这将返回"sales"表中"sales_amount"列的总和。作用:将查询结果中的多个行连接成一个字符串,并使用指定的分隔符分隔。解释:这将返回"employees"表中"salary"列的最大值。解释:这将返回"employees"表中"salary"列的最小值。解释:这将返回"customers"表中"age"列的平均值。解释:这将返回"orders"表中的行数。作用:求平均值,返回指定列数据的平均值。

2024-02-13 05:15:00 510 4

原创 MySQL 流程控制函数详解

MySQL提供了几个流程控制函数,用于在查询过程中进行条件判断、空值处理和搜索操作。本文将深入探讨MySQL中的三个流程控制函数,包括它们的功能、语法和示例用法。解释:根据学生的成绩范围返回相应的等级,如果没有符合条件的范围,则返回"不及格"。解释:如果学生的成绩大于等于60,则返回"及格",否则返回"不及格"。解释:如果员工姓名为空,则返回"未知",否则返回员工姓名。作用:根据条件进行搜索并返回相应的结果。作用:判断是否为空,并提供替代值。作用:判断条件并执行相应的操作。

2024-02-12 02:30:00 541

原创 探索 MySQL 字符串函数

在 MySQL 中,字符串操作是非常常见的任务之一。MySQL 提供了一系列强大的字符串函数,用于处理和操作字符串数据。本文将介绍一些常用的 MySQL 字符串函数,并提供示例以说明它们的用法。

2024-02-12 02:15:00 428

原创 深入了解 MySQL 数值型函数

在 MySQL 数据库中,数值型函数是处理和操作数值类型数据的重要工具。这些函数涵盖了多种数学运算和常用的数值处理需求。本文将深入介绍一些常用的 MySQL 数值型函数,并通过具体案例演示它们的使用。现在,让我们逐个通过 SQL 查询展示其效果。为了方便演示,我们首先创建一个名为。该表包含一个自增主键。,一个双精度浮点数字段。

2024-02-11 05:00:00 456 1

原创 自定义 HashMap

【代码】自定义 HashMap。

2024-02-11 02:00:00 591 2

原创 Python装饰器详解:实例分析与使用场景

在Python中,装饰器是一种强大的语法特性,允许在不修改原始代码的情况下,动态地修改或增强函数的行为。本文将通过两个实际的例子,分别介绍了计时装饰器和缓存装饰器,并深入探讨了它们的实现原理和使用场景。

2024-02-10 04:00:00 466

原创 Flask实现文件下载服务的优雅实现

通过这个简单而实用的例子,我们学会了如何在 Flask 中实现文件下载服务。这个功能在实际的 Web 应用中很常见,例如提供用户下载报告、文件等。Flask 提供了一种简单而灵活的方式来处理文件下载,通过这篇博客,你应该能够轻松地将这个功能集成到你的 Flask 项目中。

2024-02-10 03:30:00 976

原创 Matplotlib 中文柱状图绘制详解

在数据可视化的过程中,Matplotlib是Python中最受欢迎的绘图库之一。然而,当涉及到中文字符的显示时,可能会遇到一些挑战。在这篇博客中,我们将详细讨论如何使用Matplotlib绘制中文柱状图。

2024-02-09 01:45:00 474

原创 使用 matplotlib 探究Java HashCode中乘数和质数的影响

在Java中,hashCode()方法被广泛应用于散列实现,特别是在集合类中。这个方法用于返回对象的哈希码值,通常用于确定对象在哈希表中的存储位置。在这个探究中,我们将深入研究hashCode()方法中两个关键参数:乘数(multiplier)和质数(prime),探究它们对散列结果的影响。

2024-02-09 00:30:00 252

原创 Python - 构建多语言情感分析应用

在开发使用 Flask 构建的 Web 应用时,有时需要处理不同语言的情感分析。这个示例将展示如何同时处理英文和中文文本的情感分析,并使用 TextBlob 和 SnowNLP 这两个库实现。

2024-02-08 04:45:00 477 1

原创 MySQL 日期和时间函数全面指南

在数据库管理中,有效处理日期和时间对于各种操作至关重要,从简单的数据检索到复杂的分析。MySQL提供了丰富的内置函数来高效地操作日期和时间值。在本指南中,我们将探讨MySQL的基本日期和时间函数的用法和功能,探讨它们的语法和实际示例。

2024-02-07 21:09:02 595 2

原创 微服务中的请求追踪与日志记录 - `requestId`(请求ID)和 `traceId`(跟踪ID)

在微服务架构中,请求的追踪和日志记录是非常关键的,能够帮助我们更好地理解系统的行为、排查问题、优化性能。requestId(请求ID)和traceId(跟踪ID)。

2024-02-07 03:15:00 2966 1

原创 使用自定义注解处理对象状态字段

首先,我们定义一个注解,用于标记需要处理的状态字段。// 定义注解,用于标记状态字段。

2024-02-06 00:45:00 598 3

原创 使用 Protocol Buffers 在 Python 中进行序列化和反序列化

首先,我们创建一个名为在这个消息中,我们定义了一个Person类型,包含姓名(name)、年龄(age)和爱好(hobbies)字段。

2024-02-05 03:00:00 575 6

原创 利用自定义注解和反射优雅处理对象字段

首先,我们定义一个注解,用于标记需要特殊处理的字段。// 定义注解,用于标记需要特殊处理的字段// 定义字段处理类型。

2024-02-05 01:00:00 583

原创 使用自定义注解和反射实现订单处理

首先,我们定义一个注解,用于标记处理订单类型的方法。// 定义注解,用于标记处理订单类型的方法// 定义订单类型。

2024-02-04 02:00:00 451 3

原创 Python - 获取本机硬件信息

在日常计算机维护和故障排除中,了解计算机硬件配置是至关重要的。Python是一种强大而灵活的编程语言,可以通过使用Windows管理体系结构(WMI)和wmi库轻松地获取本机硬件信息。本文将介绍一个简单的Python脚本,它能够获取并显示有关计算机CPU、内存、硬盘和网络接口的详细信息。

2024-02-04 01:00:00 656

原创 使用Java实现最少活跃数负载均衡算法

在分布式系统中,负载均衡是一项关键技术,它能够确保各个服务器之间的负载相对均衡,提高系统性能和可靠性。本文将介绍一个简单而实用的最少活跃数负载均衡算法的Java实现。该算法通过选择当前活跃数最小的服务提供者,以确保请求被分配到相对较空闲的服务器上。这段简单而实用的Java代码演示了最少活跃数负载均衡算法的基本原理。通过选择活跃数最小的服务提供者,可以有效地平衡系统的负载,提高性能和可靠性。

2024-02-03 00:30:00 754 1

原创 Python 异步任务队列实现

在实际开发中,我们经常需要进行异步任务的处理,以提高程序的效率和响应速度。本文介绍了使用 Python 中的queue模块和多线程实现一个简单的异步任务队列。通过该队列,我们可以异步执行任务,并在任务完成后进行回调处理。

2024-02-02 01:00:00 585 3

原创 优雅管理多线程异步任务 - 永动异步任务

在现代应用程序中,经常需要处理长时间运行的异步任务,如消息推送、定时任务等。本文将介绍一种基于线程池的多线程异步任务管理方案,并详细讨论任务的优雅关闭。在实际项目中,存在一些永动异步任务,需要一种灵活的管理方式。任务的优雅关闭也是一个关键需求,以确保在关闭应用程序时,所有任务都能完成当前处理的数据。通过合理的线程池管理和任务设计,我们成功实现了对多线程异步任务的优雅管理和关闭。观察了每个任务的循环执行过程,以及在关闭指令下任务是如何完成当前处理的数据后才关闭的。任务的关闭通过设置标志位来通知任务停止。

2024-02-01 02:00:00 646 4

原创 使用 Python 操作 MySQL 数据库

在开发过程中,我们经常需要与数据库进行交互,执行增删改查等操作。本篇博客将介绍如何使用 Python 中的库来操作 MySQL 数据库,并提供了一个完整的示例代码。

2024-01-31 02:15:00 191 2

原创 使用 Python 操作 Redis 数据库

的类,该类封装了一系列常用的 Redis 操作,包括字符串、列表、哈希、集合和有序集合的操作。Redis 是一款高性能的键值存储系统,广泛用于缓存、实时数据处理等场景。类,并清空 Redis 数据库,确保每次操作都在一个干净的环境中进行。通过本文的介绍,你已经学会如何使用 Python 中的。库执行基本的 Redis 操作。方法在 Redis 中存储和检索字符串数据。方法,在 Redis 中存储和检索哈希数据。方法在 Redis 中进行有序集合操作。方法在 Redis 中进行集合操作。

2024-01-31 00:30:00 211

原创 Python - 整理 MySQL 慢查询日志

在实际的数据库管理和性能优化工作中,MySQL 慢查询日志(slow query log)是一个重要的工具。当系统中的 SQL 查询花费的时间超过阈值时,MySQL 会将这些查询记录在慢查询日志中,方便进行性能分析和调优。本文将介绍如何使用 Python 和正则表达式来整理 MySQL 慢查询日志,提取并排序 SELECT 查询,并生成一个更易读的输出文件。

2024-01-30 21:17:14 1347 5

原创 Java 基础 - Java中数字格式化的技巧

数字格式化在软件开发中是一个常见的需求,特别是在处理金融、统计数据等涉及数字的应用场景。Java中提供了多种数字格式化的工具,包括 DecimalFormat、String.format、BigDecimal等。在这篇博客中,我们将探讨一些数字格式化技巧,并演示如何在实际应用中使用它们。

2024-01-30 06:45:00 353 1

原创 Java 基础 - Java字符串转换为整数的两种方法

在Java编程中,经常需要将字符串转换为整数。和,并演示它们的用法。同时,我们还将讨论在转换过程中可能遇到的异常情况。通过这篇博客,我们学习了在Java中将字符串转换为整数的两种常用方法,并学会了处理可能出现的异常情况。这些方法在日常的Java开发中经常会用到,特别是在处理用户输入的字符串时。

2024-01-29 02:15:00 409 4

原创 Nacos源码解析:String.intern()方法的巧妙应用

方法的合理运用,Nacos实现了对服务名等标识符的内存优化,提高了系统的性能表现。在实际开发中,我们可以借鉴这样的优化手段,根据具体场景选择合适的字符串处理方式,以达到更好的性能和资源利用。在Nacos中,服务名作为一个标识符在整个系统中频繁使用,而且通常情况下服务名是相对固定的,很少发生变化。方法,这个使用并不是简单的拼接字符串,而是在特定场景下的优化手段。方法两次,生成两个相同的服务名字符串,通过引用比较判断它们是否是同一引用。方法可以将相同的服务名引用共享,减少字符串对象的创建,从而节省内存空间。

2024-01-28 02:15:00 565 2

原创 Python 命令行工具开发入门

输出文件内容到标准输出显示 Python 版本号显示帮助信息通过这个简单的例子,我们学习了如何使用 Python 编写一个基本的命令行工具。根据实际需求,我们可以进一步扩展功能,使其更加强大和实用。希望这篇文章对你在命令行工具的开发过程中有所帮助。

2024-01-28 01:00:00 256

原创 使用 Optional 优雅处理可能为null的值

在Java开发中,我们经常需要处理可能为null的值。为了提高代码的可读性和避免空指针异常,Java 8引入了Optional类。Optional是一个容器对象,用于包装可能为null的值。本文将介绍Optional的基本用法、源码解析以及一些常用的操作方法。Optional的引入使得我们能够更优雅地处理可能为null的值,提高代码的可读性。在适当的场景下使用Optional,可以有效地避免空指针异常,让代码更加健壮。

2024-01-27 21:57:40 1283 2

原创 Java 基础 - Java抽象类的使用示例

在示例中,我们定义了一个抽象类Shape,它包含了一个抽象方法,用于计算形状的面积。// 定义抽象类 Shape// 抽象方法,用于计算形状的面积。

2024-01-27 02:15:00 268 2

原创 Java 基础 - Java中final关键字的应用与限制

在Java中,final关键字具有多重用途,可以应用于类、方法和变量,同时也带来了一些限制。下面将对给定代码进行解释和分析,突出final关键字在不同情境下的作用。

2024-01-27 02:00:00 320

空空如也

空空如也

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

TA关注的人

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