- 博客(672)
- 资源 (151)
- 问答 (2)
- 收藏
- 关注
原创 常用命令和常见问题记录
1、 运行报错: Command line is too long. Shorten command line for xxx or also for Application default configuration.解决办法:打开程序的运行配置,把Shorten command line改为JAR manifest或classpath file;2、
2022-08-19 09:34:33
1663
原创 使用Python控制hid继电器
open_command = bytes([0x00,0xa0,0x01,0x01,0xa2]) # 调整命令格式以适应你的设备。主要的问题在于命令的发送,最后通过wireeshark抓包找到了真实的命令;其中第一位为标识符;第二位开始为抓包时获取的命令;
2025-05-27 14:40:22
24
原创 使用 Apache POI 生成 Word 文档
创建一个包含标题、段落和表格的简单文档。确保你的项目中已经添加了 Apache POI 的依赖。如果你使用的是 Maven,可以在pom.xml中添加以下内容:</</</</
2025-05-15 10:01:34
708
原创 ThreadPoolExecutor线程池,通过自定义任务类和自定义拒绝策略,获取被拒绝任务的数据
为了在拒绝策略中获取任务数据,可以使用自定义的任务类来封装任务逻辑和相关数据。将自定义任务提交到线程池,并配置自定义拒绝策略。类封装了任务的 ID 和数据,并实现了。在自定义拒绝策略中,可以通过类型检查将。转换为自定义的任务类(如。),然后提取任务数据。
2025-05-15 10:00:16
26
原创 Java 的线程池中ThreadPoolExecutor 拒绝策略的具体使用
如果内置的拒绝策略无法满足需求,可以实现自己的拒绝策略。例如,记录日志、重试任务或将任务保存到数据库。由提交任务的线程(调用者线程)执行被拒绝的任务。丢弃队列中最旧的任务,然后尝试重新提交当前任务。(队列中最旧的任务被丢弃,新任务被重新提交)直接丢弃被拒绝的任务,不抛出异常。(被拒绝的任务不会有任何输出)
2025-05-14 14:43:57
360
原创 ThreadPoolExecutor线程池使用时触发拒绝策略
假设每批次处理时间为 2 分钟,那么每个线程每 2 分钟可以完成一个批次的任务。如果任务提交速度过快(例如一次性提交所有批次),可能会导致任务堆积甚至触发拒绝策略。这意味着线程池最多可以同时处理。
2025-05-14 14:43:37
19
原创 java 结合 FreeMarker 和 Docx4j 来生成包含图片的 docx 文件
使用 FreeMarker 生成 HTML,然后通过 Docx4j 将 HTML 转换为.docx文件;
2025-05-13 15:42:52
240
原创 java使用 FreeMarker 模板生成包含图片的 `.doc` 文件
使用 FreeMarker 生成包含图片的 HTML。将生成的 HTML 直接保存为.doc文件。尽管这不是最完美的解决方案,但大多数现代文字处理软件(如 Microsoft Word)能够打开并正确显示这种类型的文件。
2025-05-13 15:42:09
39
原创 限制 MySQL 服务只能被内网 `192.168.1.*` 网段的设备访问
MySQL 默认监听所有网络接口(0.0.0.0),需要将其绑定到内网 IP 地址或限制访问范围。
2025-05-12 16:49:40
101
原创 在欧拉系统(openEuler)上安装 MySQL 8
如果系统中已经安装了旧版本的 MySQL 或 MariaDB,请先卸载它们。MySQL 官方提供了 Yum 仓库,可以通过它直接安装 MySQL 8。
2025-05-09 15:43:11
192
原创 欧拉系统(openEuler)上安装 Nginx
nginx -v如果未安装或需要重新安装,请继续以下步骤。欧拉系统支持yum或dnf包管理器,可以直接安装 Nginx。
2025-05-09 15:42:36
273
原创 一个基本的 WebSocket 服务器和客户端的python实现
服务器使用启动,并监听指定的端口。每个客户端连接由函数处理。服务器可以接收来自客户端的消息,并将其广播给所有连接的客户端。客户端可以使用连接到服务器,并发送和接收消息。
2025-05-08 10:14:27
447
原创 欧拉系统(openEuler)上安装 JDK 8
如果没有安装或版本不符合要求,请继续以下步骤。你可以从 Oracle 官方网站或 OpenJDK 社区下载 JDK 8。
2025-05-08 10:14:01
94
原创 在 Ubuntu 上将 SSH 端口更改为其他端口
在 Ubuntu 上将 SSH 端口更改为30022是一个常见的操作,用于增强服务器的安全性或满足特定的网络需求。SSH 的配置文件通常位于。你需要编辑该文件以更改默认端口(22)。
2025-05-07 09:42:33
87
原创 在 Ubuntu 上安装和配置 Redis
在 Ubuntu 系统上安装 Redis 是一个相对简单的过程。使用以下命令直接通过apt安装完成后,Redis 服务会自动启动。Redis 的配置文件通常位于。redis-cli。
2025-05-07 09:42:00
16
原创 Ubuntu在 Nginx 中为虚拟主机添加 SSL/TLS 证书
在 Nginx 中为虚拟主机添加 SSL/TLS 证书,可以让你的网站支持 HTTPS,从而提升安全性。你需要一个有效的 SSL/TLS 证书。
2025-05-06 09:54:59
561
原创 在 Ubuntu 上安装 Nginx
在 Ubuntu 上安装 Nginx 是一个简单的过程。在开始安装之前,建议先更新系统的软件包列表以确保获取最新的版本。使用apt安装过程中,系统可能会提示你确认操作,输入Y并按回车继续。安装完成后,Nginx 会自动启动。如果你启用了防火墙(如ufw),需要允许 HTTP 和 HTTPS 流量通过。
2025-05-06 09:54:13
18
原创 Java使用 MyBatis-Plus 实现前端组装查询语句、后端动态执行查询的功能,
前端逻辑与之前的设计保持一致,依然是将用户输入的查询条件组装成 JSON 格式,并通过 HTTP 请求发送到后端。定义一个 RESTful API 接口,接收前端传递的 JSON 数据,并调用服务层处理查询逻辑。),可以轻松实现前端组装查询语句、后端动态执行查询的功能。以下是基于 MyBatis-Plus 的完整实现方案。通过 MyBatis-Plus 的动态条件构造器(在服务层中,使用 MyBatis-Plus 的。动态构建查询条件,并结合分页功能执行查询。,无需额外定义方法。
2025-04-30 10:37:26
363
原创 MyBatis的SQL映射文件中,`#`和`$`符号的区别
在MyBatis的SQL映射文件中,和符号用于处理SQL语句中的参数替换,但它们的工作方式和使用场景有所不同。#{}
2025-04-30 10:36:24
378
原创 Java基于MyBatis 实现前端组装查询语句、后端动态执行查询的功能
前端逻辑与之前的设计保持一致,依然是将用户输入的查询条件组装成 JSON 格式,并通过 HTTP 请求发送到后端。通过 MyBatis 的动态 SQL 功能,可以轻松实现前端组装查询语句、后端动态执行查询的功能。定义一个 RESTful API 接口,接收前端传递的 JSON 数据,并调用服务层处理查询逻辑。在服务层中,调用 MyBatis 的 Mapper 接口,执行动态 SQL 查询。与之前的实现类似,定义一个 Java 对象来接收前端传递的查询参数。在 XML 文件中定义动态 SQL 查询逻辑。
2025-04-29 16:16:28
57
原创 一个用于获取抖音直播间弹幕小程序
GitHub开源项目:用户只需要输入直播间的房间号,程序就能实时获取对应直播间的弹幕,并将其解析展示出来,用户还可通过ws/wss地址将获取的弹幕信息转发到自己的后端以作它用(如:弹幕互动游戏、数据分析等)
2025-04-29 15:30:08
218
原创 基于 Java 的实现前端组装查询语句,后端直接执行查询方案,涵盖前端和后端的设计思路
后端接收到前端传递的查询参数后,解析并动态生成 SQL 查询语句,最终执行数据库查询。前端负责根据用户输入或交互条件,动态生成查询参数,并通过 HTTP 请求发送到后端。
2025-04-28 15:38:32
246
原创 使用Java 操作 Nginx 配置文件
如果只是简单的配置修改,可以直接操作文件或调用 Shell 命令。如果需要动态管理或复杂逻辑,建议使用 API 或模板引擎。在生产环境中,务必小心操作 Nginx 配置文件,并确保语法正确以及服务的稳定性。
2025-04-26 13:39:21
59
原创 如何使用 mongoexport 导出集合
是 MongoDB 提供的一个命令行工具,用于将集合中的数据导出为 JSON 或 CSV 格式。--db--out。
2025-04-09 10:23:40
810
原创 在 Java 中通过线程池的 API 或使用 `Thread` 类的方法获取当前运行的线程数。
如果你需要获取 JVM 中所有活动线程的数量(包括非线程池中的线程),可以使用。根据具体需求选择合适的方法。如果需要监控线程池的状态,推荐使用。如果你使用的是 Spring 的。以下是几种常见的方法和示例代码。(或 Spring 的。获取更详细的线程信息。
2025-04-09 10:22:28
271
原创 如何为多个条件构建 Bson 过滤器
在 MongoDB 中,Filters是 MongoDB Java 驱动程序提供的一个工具类,用于构建查询条件(即过滤器)。如果你需要构建包含多个条件的查询过滤器,可以使用Filters提供的各种逻辑操作符方法,例如andor等。如果需要同时满足多个条件,可以使用方法。
2025-04-07 21:42:11
169
原创 在 Java 中,获取当前日期前一个月的时间的两种方法
包提供了更现代化和易用的日期时间 API。如果你使用的是 Java 7 或更早版本,可以使用。从 Java 8 开始,
2025-04-07 16:23:49
224
原创 Spring Boot 项目Swagger 注解@Schema转换为word文档
【代码】Spring Boot 项目Swagger 注解@Schema转换为word文档。
2025-03-25 10:20:20
243
原创 Hutool一个类型转换工具类 `Convert`,
如果你有特殊的转换需求,还可以通过实现Converter接口来创建自己的转换器,并注册到Convert这样,你就可以根据项目需求定制特定类型的转换逻辑。Convert工具类极大地简化了Java中不同类型间转换的操作,减少了手动转换时可能出现的错误。无论是基础数据类型还是更复杂的对象类型,Convert都能提供便捷的支持。在实际项目中合理利用 Hutool 的Convert可以显著提高代码的可读性和维护性。
2025-03-04 20:56:51
274
原创 在Spring Boot项目中导出复杂对象到Excel文件
在Spring Boot项目中导出复杂对象到Excel文件,可以利用Hutool或EasyExcel等库来简化操作。这里我们将详细介绍如何使用Hutool和EasyExcel两种方式来实现这一功能。
2025-03-04 20:55:54
290
原创 SpingBoot使用Google Guava库中的RateLimiter限制调用次数
接下来,创建一个简单的限流器类,并在服务类中集成它以限制对第三方API的调用频率。方法会尝试获取一个令牌,如果成功则返回。实例,其速率设置为每分钟10次请求。依赖、限流器和服务类以及控制器。在这个例子中,我们创建了一个。以下是完整的示例代码,包括。
2025-02-22 21:23:27
91
原创 SpringBoot中实现限流和熔断功能
我们将使用Java的来实现一个简单的令牌桶算法(Token Bucket Algorithm),并结合一个自定义的服务类来处理第三方API调用。
2025-02-22 21:18:26
153
原创 Java中实现延迟执行任务
适合大多数场景,提供了灵活的任务调度能力。Timer和TimerTask:适合简单的定时任务,但不如灵活和强大。:适合非常简单的场景,但会阻塞当前线程,不推荐用于复杂的并发控制。Spring:如果你正在开发一个 Spring 应用,这是一个非常方便的选择,特别是当你需要与 Spring 生态系统集成时。
2025-02-21 15:19:33
105
原创 基于Spring Boot,结合Redis缓存和RabbitMQ消息队列的站内信系统设计
【代码】基于Spring Boot,结合Redis缓存和RabbitMQ消息队列的站内信系统设计。
2025-02-20 21:48:46
251
原创 将RocketMQ集成到了Spring Boot项目中,实现站内信功能
通过以上步骤,我们成功地将RocketMQ集成到了Spring Boot项目中,实现了站内信系统的异步处理。添加RocketMQ依赖:在pom.xml中添加RocketMQ相关的依赖。配置RocketMQ:在中配置RocketMQ的相关参数。数据模型和Repository:定义实体类和Repository接口。Service层:在Service层中集成RocketMQ的消息发送和Redis缓存。消息监听器:使用注解创建消息监听器,处理接收到的消息。Controller。
2025-02-20 21:47:56
535
Edge-TTS的使用
2025-02-05
vue中点击图片可以预览,可放大缩小,如何实现
2022-03-09
mysql查询问题,需要分类汇总
2021-09-17
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅