- 博客(30)
- 收藏
- 关注
原创 RabbitMQ实现延迟消息
确保RabbitMQ已安装并启用了RabbitMQ Delayed Message插件。通过上述步骤和代码示例,你可以在Java中实现RabbitMQ的延迟消息功能。在你的Maven项目的。
2024-07-05 13:32:54
536
原创 索引失效的几种场景
这些场景都可能导致索引失效,从而影响查询性能。为了保持索引的有效性,数据库管理员应定期检查和优化索引使用情况,确保数据库查询的高效运行。
2024-07-05 09:05:18
327
原创 Redis 的缓存淘汰策略
从设置了过期时间的键中选择最少使用频率(Least Frequently Used, LFU)的键进行淘汰。适用于只淘汰那些有过期时间的键,且有些键被频繁访问,而有些键很少被访问的场景。这种策略适用于那些有些键被频繁访问,而有些键很少被访问的场景。: 从设置了过期时间的键中选择最近最少使用(Least Recently Used, LRU)的键进行淘汰。: 从设置了过期时间的键中选择存活时间最短(Time to Live, TTL)的键进行淘汰。适用于只淘汰那些有过期时间的键,且不关心键的使用频率。
2024-07-04 14:11:51
651
2
原创 B+树的元素检索过程
B+树的设计使得每次查找的时间复杂度为 O(log n),其中 n 是树中节点的数量。这是因为 B+树是一种平衡树,每个节点拥有多个子节点,从而减少了树的高度,加快了查找速度。在每个非叶子节点中,根据节点内部存储的索引键(或者范围)来决定接下来搜索的路径。总结来说,B+树的检索方式是通过多路搜索,利用节点内部的索引信息,逐层向下遍历直到叶子节点,然后在叶子节点中进行具体的数据匹配操作。B+树的检索方式主要是通过从根节点开始逐层向下搜索,直到找到目标数据或确定目标数据不存在为止。
2024-07-04 11:07:49
597
原创 切点类型【PointCut】有哪些
基于方法签名的切点:通过表达式匹配方法。基于注解的切点:通过@within()@target()@args()表达式匹配带有特定注解的方法或类。基于对象类型的切点:通过this()target()表达式匹配特定对象类型的方法。基于参数的切点:通过args()表达式匹配方法参数类型。其他切点类型:通过bean()表达式匹配特定 Spring Bean 的方法。通过这些切点类型,可以灵活地在 Spring 应用中拦截和处理不同类型的方法调用。
2024-07-04 10:02:23
660
原创 获取方法的入参和返回值
创建一个类并使用@Aspect注解标注它,定义拦截方法调用的切面。在切面类中,通过JoinPoint获取方法的入参,通过获取方法的返回值。// 获取方法名 String methodName = joinPoint . getSignature() . getName();// 获取方法参数 Object [ ] args = joinPoint . getArgs();
2024-07-04 09:46:45
849
原创 bean的生命周期
每个步骤都是可选的,并且取决于 bean 的配置和实现的接口。通过这些步骤,Spring 提供了强大的机制来控制 bean 的生命周期,允许开发者在不同的生命周期阶段执行特定的逻辑。最后,Spring 容器销毁 bean,并释放所有占用的资源。
2024-07-04 08:50:40
268
原创 ConcurrentHashMap 优化历程
Java 7及之前:使用分段锁机制,通过将哈希表分成多个段来提高并发性能。Java 8及之后:移除分段锁,采用细粒度锁和CAS操作,进行一系列优化,包括哈希函数优化、位运算取模、树化和渐进式扩容。这些改进显著提升了并发性能和可扩展性,使得在多线程环境中提供更高效、线程安全的哈希表操作。
2024-07-03 15:17:53
344
原创 事务性消息
事务性消息通过严格的事务控制机制,确保消息在传递和处理过程中具有一致性和可靠性,适用于需要高数据一致性和高可靠性的应用场景。不同的消息队列系统通过不同的实现机制支持事务性消息,根据具体需求选择合适的消息队列系统和事务机制。
2024-07-03 10:54:42
591
原创 Kafka 和 RabbitMQ对比
Kafka和RabbitMQ是两种广泛使用的消息队列系统,它们在设计理念、架构和功能上有很多相似之处,但也有许多显著的区别。
2024-07-03 10:24:09
605
原创 MES与MOM之间的关系
MES和MOM都是为了提升制造业效率和管理水平的重要工具。MES专注于车间层面的执行和控制,而MOM则提供更全面的制造运营管理,从策略制定到执行控制,覆盖整个制造过程。两者相辅相成,共同推动企业制造能力的提升。
2024-07-03 08:46:37
421
原创 MyCAT
通过 MyCAT,用户可以简化数据库的管理和运维工作,实现系统的高性能和高可用性。:MyCAT 具有自动监控和故障转移功能,当某个 MySQL 实例发生故障时,MyCAT 能够自动将请求切换到其他健康的实例,保证系统的高可用性。这种水平拆分可以处理更大的数据量,并提高系统的扩展性。:MyCAT 支持多租户架构,能够在同一系统中管理多个租户的数据,适用于 SaaS(软件即服务)等多租户应用场景。:MyCAT 通过将请求分发到多个 MySQL 实例来实现负载均衡,避免单个实例成为瓶颈,提升整体系统的性能。
2024-07-02 16:17:04
308
原创 Java与西门子S7系列PLC进行通信
通过使用S7Connector库,你可以轻松地使用Java与西门子S7系列PLC进行通信。上述示例展示了如何读取和写入数据,并提供了辅助方法来处理不同的数据类型。根据需要,你可以进一步扩展这些方法来满足具体的应用需求。
2024-07-02 15:54:47
2108
原创 Java 使用 OPC UA
使用Eclipse Milo库可以方便地与OPC UA服务器进行通信。通过上述步骤,你可以快速开始使用Java与OPC UA进行交互。可以根据需求扩展和定制客户端的功能,如订阅数据更改、浏览节点等。
2024-07-02 15:16:00
2786
2
原创 Hadoop、Spark和 Hive 的详细关系
Hadoop 提供了分布式存储和资源管理的基础。Spark 提供了高效的内存计算和丰富的数据处理 API。Hive 提供了类 SQL 的接口,简化了数据查询和分析。这三种技术的结合使得组织能够存储、处理和分析海量数据,满足各种大数据应用场景的需求。
2024-06-29 14:45:45
1191
原创 StringBuilder介绍
在需要频繁修改字符串内容的情况下提供了一种高效的解决方案。通过其丰富的方法,可以方便地进行字符串的追加、插入、删除、替换等操作。与类似,但是非线程安全的,适用于单线程环境中的高效字符串操作。
2024-06-26 14:45:19
421
原创 windows基础命令
cmd - 命令提示符control - 控制面板notepad - 记事本calc - 计算器mspaint - 画图winver - Windows版本信息regedit - 注册表编辑器msconfig - 系统配置appwiz.cpl - 程序和功能devmgmt.msc - 设备管理器diskmgmt.msc - 磁盘管理services.msc - 服务taskmgr - 任务管理器explorer - 文件资源管理器%temp% - 临时文件夹mstsc - 远
2024-06-21 10:25:18
148
原创 使用 Kafka
引入 Kafka 依赖:在 Maven 项目中添加 Kafka 客户端依赖。配置 Kafka:配置 Kafka 以无需 Zookeeper 模式运行。启动 Kafka 服务器:使用配置启动 Kafka 服务器。创建 Kafka 主题:使用命令行工具创建主题。编写 Kafka 生产者代码:发送消息到 Kafka 主题。编写 Kafka 消费者代码:从 Kafka 主题接收消息。通过以上步骤,你可以在 Java 中成功配置并使用无需 Zookeeper 的 Kafka (KRaft 模式)。
2024-06-19 11:22:59
403
原创 通俗易懂的chatGPT原理简介
ChatGPT是由OpenAI开发的一个基于GPT(生成预训练变换器)架构的语言模型。它能够理解和生成自然语言,用来回答问题、对话和提供建议等。
2024-06-19 08:58:41
450
原创 JNA 实现事件注册
定义本地库接口:使用 JNA 定义一个接口,描述本地库中的方法。编写本地库:编写一个本地库,包含事件注册和回调的实现。在 Java 中注册事件并处理回调。在 Java 中定义一个接口来映射本地库中的方法。
2024-06-18 17:07:56
193
原创 my.ini 文件配置
以下是 MySQL 配置文件 my.ini 中常见的配置参数及其详细解释。这些参数可以根据需要进行调整,以优化 MySQL 数据库的性能和行为。
2024-06-17 11:02:02
3139
原创 OLAP AND OLTP
OLAP(Online Analytical Processing)和OLTP(Online Transaction Processing)是两种不同类型的数据库系统,它们的设计和用途有所不同。这些数据库各自在 OLAP 和 OLTP 领域有着突出的性能和特性,用户可以根据具体需求选择合适的数据库系统。OLAP 代表性数据库。
2024-06-17 10:06:24
960
原创 【无标题】
Caused by: org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input l
2023-01-25 22:49:34
93
原创 SQL语句学习
SQL语句学习Select用途:从指定表中取出指定的列的数据。语法:SELECT column_name(s) FROM table_name解释:从数据库中选取指定列,并允许从一或多个指定表中,选取一或多个指定列或指定行。SELECT 陈述式的完整语法相当复杂,但主要子句可摘要为:SELECT select_list [ INTO new_table ] FROM table_source [ WHERE search_condition ] [ GROUP BY group_b
2021-04-09 16:48:26
221
原创 Spring学习笔记
SpringIOC本质控制反转ioc(inversion of Control),是一种设计思想,DI(依赖注入)是实现ioc的一种方法,也有人认为只是ioc的另一种说法,没有ioc的程序中,我们使用面向对象编程,对象的创建与对象间依赖关系完全硬编码在程序中,对象的创建由程序自己控制,控制反转后将对象的创建转移给第三方,个人认为所谓的控制反转就是:获得依赖对象的方式反转了。采用XML方式配置Bean的时候,Bean的定义信息是和实现分离的,而采用注解的方式可以把两者合为一体,Bean的定义信息直接以注
2021-03-13 15:25:49
128
原创 Windows10 Python3.7安装Face_Recognition
Windows10 Python3.7安装Face_Recognition这边简单说一下,安装的话最好按我说的流程装会比较好,因为每个安装都要以上一个安装为基本环境才能安装首先你必须现有python,这个无所谓,应用商店或官网下载都可以安装完Python,当然不能没有pip了,这可是python导入第三方库的最好方式了。安装前更新一下pip比较好。先安装 cmakepip install cmake然后安装VS2019,全称visualStudio2019,我下载的是 社区版(免费)下载地
2020-05-22 14:56:59
989
原创 使用Layui框架的简单web界面开发
使用Layui框架的简单web界面开发Layui的简介优势框架的安装使用方法Layui的简介layui(谐音:类UI) 是一款采用自身模块规范编写的前端 UI 框架,遵循原生 HTML/CSS/JS 的书写与组织形式,门槛极低,拿来即用。其外在极简,却又不失饱满的内在,体积轻盈,组件丰盈,从核心代码到 API 的每一处细节都经过精心雕琢,非常适合界面的快速开发。layui 首个版本发布于 2016 年金秋,她区别于那些基于 MVVM 底层的 UI 框架,却并非逆道而行,而是信奉返璞归真之道。准确地说,她
2020-05-22 14:10:13
14120
4
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人