- 博客(202)
- 资源 (13)
- 收藏
- 关注
原创 穿越荆棘:2024我如何在技术路上破茧成蝶
穿越荆棘,我像一只破茧成蝶的蝴蝶,虽然一路上有荆棘丛生,但也因此见识到了更广阔的天空。每次突破,都让我更坚信一件事:“编程的世界里,没有走不到的路,只有走不完的梦。”
2025-01-18 17:19:38 878 2
原创 【Java版本OpenCV】无敌OpenCV越学越爽Java版代码持续更新(环境搭建|核心代码)
Java版本OpenCV代码实战,springboot整合opencv,包括linux,windows下opencv环境搭建,章节代码演示
2024-03-11 09:19:55 6987 14
原创 springboot免安装整合Opencv兼容windows和linux
由于opencv动态库不能跨平台使用,所以要区分环境,windows下是opencv_java4.8.0.dll这种格式,linux下是libopencv_java480.so这种格式,默认本地使用dev环境,也可以在配置类中加载,只要保证能在使用前加载进来就行。
2024-03-05 15:07:25 3732 3
原创 用OpenCV加Robot打造Java版按键精灵
按键精灵,作为一种自动化工具,旨在模拟人工按键操作,以完成各种重复性任务。它的应用范围广泛,从游戏辅助到自动化测试,皆有涉及。但是,传统的按键精灵往往局限于简单的固定模式,缺乏对环境的智能感知。java有着更丰富的类库,可以制作功能更强大的按键精灵
2024-02-29 15:58:39 2307 1
原创 MySQL 的体系结构详解
MySQL 是一个流行的关系型数据库管理系统,以其高性能、灵活性和可靠性而闻名。它采用了分层的体系结构设计,主要包括连接层、服务层、存储引擎层和底层存储系统。这种设计使得 MySQL 既可以满足高并发的请求,又能提供灵活的存储方案。连接层是 MySQL 的最上层,负责处理客户端与服务器之间的交互。它包括用户认证、连接管理和线程处理等功能。功能:特点:连接层相当于 MySQL 的门卫,所有客户端的请求都需要先通过这一层进行身份验证和资源分配。服务层是 MySQL 的核心部分,负责处理 SQL 查询的逻辑,包括
2025-01-19 10:06:33 760 3
原创 MySQL 数据导入与导出的深入解析
MySQL 提供了强大的数据导入和导出工具,能够高效处理不同格式和需求的文件操作。无论是还是,都需要开发者充分考虑数据格式、权限配置和安全问题,以确保操作的高效和安全。通过合理利用这些功能,开发者可以更轻松地实现数据的迁移、备份与恢复,同时提升系统的可扩展性和数据管理能力。
2025-01-19 10:06:03 629
原创 IntelliJ IDEA Type Hierarchy Scope Pattern 学习指南
为了更高效地使用 Type Hierarchy,我们可以自定义其显示范围。通过自定义 Scope,可以过滤出特定包中的类,减少不必要的干扰。完成上述设置后,当你重新打开 Type Hierarchy 窗口并选择刚才创建的 Scope(例如Java 包仅显示java包及其子包中的类。忽略其他第三方库或项目中的类。更加清晰地展示核心库的继承关系。例如,查看Exception类的 Type Hierarchy 时,只会显示java包中的子类,而不会显示外部依赖中的类。
2025-01-14 10:27:37 1051
原创 Java中如何安全中断线程及其使用场景
线程中断是一种优雅且安全的控制线程的机制。与直接终止线程相比,线程中断允许线程自己根据情况做出响应。中断线程时,特别是在阻塞操作(如sleep或wait)中,能够提前退出并处理一些清理工作。在实际开发中,采用中断机制而非直接强制停止线程,可以避免许多潜在的问题,例如死锁、资源泄漏等。非阻塞线程中断:通过检查线程的中断状态。阻塞线程中断:通过捕获异常来响应中断信号。中断状态重置会清除当前线程的中断标志,而则不会清除。
2025-01-09 16:48:55 545
原创 Spring Boot 中的 classpath详解
classpath在 Spring Boot 中,classpath是应用程序中资源文件存放和访问的关键部分。在开发阶段,资源文件存放在目录中,编译后被复制到目录中。最终打包为 JAR 文件时,资源文件会被放置在目录下,这与传统 JAR 文件的结构不同。Spring Boot 使用 Maven 构建时,会自动处理资源文件的拷贝和组织,确保它们能够在应用程序启动时被正确加载。
2025-01-02 10:44:28 923
原创 IDEA自带插件禁用,减少内存占用
上面插件的描述,几乎都是从英文翻译过来的,然后大部分我们看翻译或插件名就能知道自己有没有用到这个插件、能不能禁用,但是也有一部分看描述也不知道这个具体是干嘛的,所以我就自己按直觉能禁用的也给禁用了,目前用了一两个星期也没啥问题哈,大家可以参考参考,如果有什么补充可以在评论区交流。
2024-12-30 16:21:39 1188
原创 Java中集合的的多字段排序(链式排序)详解
链式排序是将多个排序条件链接在一起,以确保数据按照一系列的规则进行排序。如果第一个排序条件相同,则根据第二个排序条件排序,依此类推。最终,所有的排序条件将按顺序起作用。有时我们需要更灵活的排序条件,可以使用自定义的比较器。链式排序是一种非常强大和灵活的排序技术,它允许我们按多个维度进行排序,且每个维度的排序条件可以独立设置。Java 中的Comparator提供了非常简洁的 API 来实现链式排序,尤其是和方法,使得多条件排序变得简单直观。多条件排序:例如,按姓名排序,再按年龄排序。
2024-12-03 15:06:41 1137
原创 详解日志格式配置:XML 与 Spring Boot 配置文件格式
颜色和格式使用Logback提供的ANSI转义码,可以轻松为日志输出添加颜色,帮助开发人员快速定位问题。日志格式中可以控制时间戳、日志级别、记录器、消息内容等部分的颜色,使日志更具可读性。字符数限制通过限制字段长度(如或%M{10}),可以避免日志输出过长,影响日志的整洁性。适用场景更适用于复杂的日志配置和多种输出形式(如文件、控制台)。和提供简单而有效的方式来配置 Spring Boot 项目的日志格式。
2024-12-03 10:47:01 1110
原创 数据结构与算法之二分查找算法详解(Java实现)
二分查找(Binary Search)是一种**非常高效的查找算法**,它在**有序**数组或有序列表中通过反复将搜索范围分为两半来查找目标元素。由于每次查找都将规模减半,所以它的时间复杂度是 **O(log n)**,比线性查找 **O(n)** 要高效得多。
2024-11-29 10:27:19 775
转载 漫画:什么是 “图”?(修订版)
这样就引入一个新概念:边的。如图所示,十字链表的每一个顶点,都是两个链表的根节点,其中一个链表存储着该顶点能到达的相邻顶点,另一个链表存储着能到达该顶点的相邻节点。同时,无向图对应的矩阵是一个对称矩阵,V0和V1有关联,那么V1和V0也必定有关联,因此A[0][1]和A[1][0]的值一定相等。这样一来,要想查出有哪些节点能一步到达顶点1就容易了,从顶点1向后的所有链表节点,就是能一步到达顶点1的节点。要想查出顶点0能够到达的所有相邻节点,也很简单,从顶点0向后的所有链表节点,就是顶点0能到达的相邻节点。
2024-11-28 15:00:42 48
转载 运筹优化:一门决策的科学
引子作为算法工程师中的小众路线,运筹优化还没有像搜、广、推、ML、CV、NLP那般广为人知。22年秋招,一众互联网大厂中仅有阿里、美团、京东大量设立了专门面向运筹优化工程师的算法岗位。所以呢,常常有其他方向的同学问我:“运筹优化是什么?运筹优化工程师都做些什么?”简单来说,运筹优化是一门研究“决策(decision making)”的科学,运筹优化工程师要做的事情就是通过各种数学工具帮助业务在所有可能的方案中做出最佳的决策。无论决策的对象是今天的晚餐吃什么、下班走什么路线回家,还是这个月的工资买哪些理
2024-11-28 11:20:59 156
原创 使用 exe4j 将 Spring Boot 项目打包为 EXE 可执行文件
使用 exe4j 将 Spring Boot 项目打包为 EXE 可执行文件
2024-11-26 11:27:41 1511
原创 深入理解分页及 PageHelper 使用细节与注意事项
分页是现代应用开发中必不可少的一环,尤其在面对大数据量的场景时,通过分页可以有效减少单次查询的返回数据量,提升性能和用户体验。在 Java 开发中,PageHelper 是一个非常流行的分页插件,简单易用。PageHelper 利用 MyBatis 的插件机制拦截查询语句,在查询 SQL 中自动加入分页语法,如 MySQL 的。,它的作用是为当前线程开启分页上下文,并在接下来的查询中拦截 SQL,添加分页参数。如果分页查询代码在条件分支中,而分支未被执行,分页上下文未被清理会干扰后续查询。
2024-11-18 15:32:26 529
原创 Java版本的基于计算机视觉的跃动小子保卫主公自动通关计划之执行计划生成篇
微信小程序跃动小子保卫主公自动通关之执行计划,包含了移动1步,2步,3步,4步消除3个元素,4个元素,5个元素,6个元素,7个元素的所有执行计划,共计20036个
2024-11-01 15:50:16 925 1
原创 使用DJL和PaddlePaddle的口罩检测详细指南
该系统能够精准地检测人脸并判断口罩佩戴状态,可应用于各类检测场景。可以根据实际需求,调整缩放比例scale和置信度阈值threshold以平衡速度和精度。
2024-11-01 13:49:08 773
原创 基于Java深度学习库Deep Java Library 的图片相似度计算
在本文中,我们将使用DJL中的预训练模型ResNet50来提取图片的特征向量,并计算图片之间的相似度。我们主要关注使用余弦相似度、欧氏距离和内积三种方法对图片特征向量进行1:1比对,以评估图片的相似性,进一步实现图片分类。
2024-10-31 19:09:34 494
原创 基于Java深度学习库Deep Java Library 的一键抠图功能
一键抠图是一种图像处理技术,旨在自动将图像中的前景对象从背景中分离出来。它可以帮助用户快速、准确地实现抠图效果,无需手动绘制边界或进行复杂的图像编辑操作。一键抠图的原理通常基于计算机视觉和机器学习技术。它使用深度神经网络模型,通过训练大量的图像样本,学习如何识别和分离前景对象和背景。这些模型能够理解图像中的像素信息和上下文,并根据学习到的知识进行像素级别的分割。
2024-10-31 08:56:02 447 1
原创 kafka相关面试题
消息中间件是基于队列与消息传递技术,在网络环境中为应用系统提供同步或异步、可靠的消息传输的支撑性软件系统。消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。
2024-10-29 08:50:15 1050
原创 kafka消费者组分区分配实战
问题引入:一个consumer group中有多个consumer组成,一个 topic有多个partition组成,现在的问题是,到底由哪个consumer来消费哪个partition的数据Kafka有四种主流的分区分配策略: Range、RoundRobin、Sticky、CooperativeSticky可以通过配置参数partition.assignment.strategy,修改分区的分配策略。Kafka可以同时使用多个分区分配策略。
2024-10-29 08:49:26 1460
原创 面试八股文之MySql面试题
相信大家小时候学习汉字的时候都会查字典,想想你查字典的步骤,我们是通过汉字的首字母 a~z 一个一个在字典目录中查找,最终找到该字的页数。想想,如果没有目录会怎么样,最差的结果是你有可能翻到字典的最后一页才找到你想要找的字。索引就**「相当于我们字典中的目录」**,可以极大的提高我们在数据库的查询效率。
2024-09-05 17:21:40 1157
原创 聊聊Redis分布式锁的八大坑
在分布式系统中,由于redis分布式锁相对于更简单和高效,成为了分布式锁的首先,被我们用到了很多实际业务场景当中。今天我们就一起聊聊redis分布式锁的一些坑,给有需要的朋友一个参考。
2024-09-05 11:02:35 1180
原创 redis之list核心命令演示与细节探索
移除并且得到集合中的最后一个元素,或者阻塞直到有一个元素(或者超时报错)count0时从左往右移除 count个。count = -2时从右往左删除2个v1。如果list存在,则从左边往里面添加元素。count = 2时从左往右删除2个v1。count = 0时删除全部的v1。从list中删除传入的元素。count=0时移除所有的。
2024-09-04 19:52:21 928
原创 Apache Kafka 消费者 API 详解
本文详细介绍了 ApacheKafka 消费者 API 的使用,包括配置、消息消费、偏移量管理、错误处理和性能优化。通过理解和实践这些内容,可以帮助你更好地使用 Kafka 消费者进行高效、可靠的数据消费。希望本文对你有所帮助,如有任何疑问或建议,欢迎留言讨论。
2024-09-03 08:41:16 763
原创 redis之地理空间geo实战以及选项详解
Redis GEORedis GEO 主要用于存储地理位置信息,并对存储的信息进行操作,该功能在 Redis 3.2 版本新增。Redis GEO 操作方法有:geoadd:添加地理位置的坐标。geopos:获取地理位置的坐标。geodist:计算两个位置之间的距离。georadius:根据用户给定的经纬度坐标来获取指定范围内的地理位置集合。georadiusbymember:根据储存在位置集合里面的某个地点获取指定范围内的地理位置集合。
2024-09-03 08:38:45 2299
原创 从源码分析 Redis 异步删除各个参数的具体作用
在 Redis 4.0 之前,通常不建议直接使用 DEL 命令删除一个 KEY。这是因为,如果这个 KEY 是一个包含大量数据的大 KEY,那么这个删除操作就会阻塞主线程,导致 Redis 无法处理其他请求。这种情况下,一般是建议分而治之,即批量删除 KEY 中的元素。在 Redis 4.0 中,引入了异步删除机制,包括一个新的命令 -UNLINK。该命令的作用同DEL一样,都用来删除 KEY。只不过DEL命令是在主线程中同步执行删除操作。
2024-08-15 20:34:15 901
原创 Spring Boot 整合 Kafka 详解
本文详细介绍了如何在 Spring Boot 项目中整合 Apache Kafka,包括 Kafka 的配置、消息的同步和异步发送。通过理解和实践这些内容,可以帮助你更好地掌握 Spring Boot 与 Kafka 的整合与应用。希望本文对你有所帮助,如有任何疑问或建议,欢迎留言讨论。
2024-08-05 14:19:51 2409
原创 使用 `removeIf` 轻松移除集合元素:避免 `ConcurrentModificationException` 异常的最佳实践
在现代 Java 开发中,我们经常需要对集合进行操作,比如移除符合特定条件的元素。方法为 Java 开发者提供了一种简洁高效的方式来移除集合中符合特定条件的元素。在 Java 8 之前,移除集合中符合特定条件的元素通常需要使用迭代器(Iterator)并手动判断。方法的背景、使用方法、注意事项,并举一些日常开发中常见的应用场景,同时也会展示如何避免。,分别代表前端传入的用户和数据库中已有的用户。方法,可以有效提升开发效率和代码质量,并避免常见的。方法,使得我们可以通过一行代码完成相同的操作。
2024-08-05 14:19:32 720
原创 Apache Kafka 生产者 API 详解
本文详细介绍了 Apache Kafka 生产者 API 的使用,包括配置、消息发送、错误处理和性能优化。通过理解和实践这些内容,可以帮助你更好地使用 Kafka 生产者进行高效、可靠的数据传输。希望本文对你有所帮助,如有任何疑问或建议,欢迎留言讨论。
2024-08-03 15:32:20 899
原创 Apache Kafka 事务详解
Kafka 的事务性支持在 0.11.0 版本中引入,目的是提供跨多个 topic 和 partition 的原子消息写入能力。这意味着事务消息要么全部写入成功,要么全部失败,从而确保数据的一致性和完整性。确保多个 topic 和 partition 的消息一致性实现端到端的 Exactly Once 语义(EOS)防止消息丢失或重复消费Kafka 的事务性支持提供了一种确保消息一致性和完整性的方法,尤其适用于需要跨多个 topic 和 partition 进行原子写入的场景。
2024-08-03 15:29:40 694
读书笔记:《深入理解Java虚拟机 Jvm高级特性与最佳实践第二版》书中的示例代码供学习使用.zip
2024-07-25
读书笔记:《深入理解Java虚拟机 Jvm高级特性与最佳实践第二版》书中的示例代码Maven版本学习使用.zip
2024-07-25
读书笔记:《深入分析 Java Web 技术内幕》 分布式 Session 框架 DEMO.zip
2024-07-25
读书笔记:《数学建模导论》教程全网最全数学建模模型与算法教程系列带你走进数学建模的大门.zip
2024-07-25
Java使用DJL和PaddlePaddle的口罩检测详
2024-11-01
基于Java深度学习库Deep Java Library 的图片相似度计算
2024-11-01
基于Java深度学习库Deep Java Library 的一键抠图功能
2024-10-31
轻量级免安装电脑录屏软件oCam.zip
2024-09-30
读书笔记:《深入理解Java虚拟机JVM高级特性与最佳实践》笔记和理解。本笔记主要以图的形式记录。.zip
2024-07-25
求一跃动小子保卫主公Java算法实现
2024-11-12
TA创建的收藏夹 TA关注的收藏夹
TA关注的人