- 博客(60)
- 资源 (3)
- 问答 (4)
- 收藏
- 关注

原创 Spring Boot集成 mina 服务端搭建
Spring Boot集成 mina 服务端搭建 <!--Mina框架依赖 --> <dependency> <groupId>org.apache.mina</groupId> <artifactId>mina-core</artifactId> <version>2.0.2</version>
2020-10-23 18:00:07
1222

原创 springboot任务多种线程池配置详解
线程池配置第一种`import com.esotericsoftware.minlog.Log;import org.springframework.aop.interceptor.AsyncUncaughtExceptionHandler;import org.springframework.aop.interceptor.SimpleAsyncUncaughtExceptionHand...
2019-08-26 09:36:53
1718
原创 Java 使用 LangChain4j 搭建大模型的 RAG 教程
RAG 的核心思想是将传统的信息检索(IR)技术与现代的生成式大模型结合起来。其工作原理可以分为以下几个步骤:接收请求:系统接收到用户的查询。信息检索(R):从知识库中检索出与查询最相关的文档片段。生成增强(A):将检索到的文档片段与原始查询一起输入到大模型中。输出生成(G):大模型生成最终的文本答案。LangChain4j 是 LangChain 的 Java 版本,旨在封装与 LLM 对接的细节,简化开发流程,提升基于 LLM 开发的效率。
2025-04-18 14:48:18
1052
原创 RAG和KAG的区别
RAG(Retrieval-Augmented Generation,检索增强生成)和 KAG(Knowledge-Augmented Generation,知识增强生成)都是用于增强生成模型能力的框架,但它们在多个方面存在区别,以下是具体介绍:原理与知识处理方式RAG :基于检索和生成的结合,用户查询经检索系统处理后,从外部知识源检索相关文档或段落,再将这些作为上下文输入生成模型,生成相关回复。KAG :将结构化知识图谱或外部知识库直接纳入模型架构,先接收文档、数据等并分解成片段,识别重要信息构建知
2025-04-18 11:46:07
612
原创 pgvector 向量数据库的安装方式全集
精确和近似最近邻搜索单精度、半精度、二进制和稀疏向量L2 距离、内积、余弦距离、L1 距离、汉明距离和 Jaccard 距离任何具有 Postgres 客户端的 语言另外还有 ACID 兼容性、点及时恢复、JOIN 以及 Postgres 的所有其他 出色功能
2025-03-18 22:28:52
568
原创 linux 中毒 脚本 .system 服务器中毒占用CPU,进程名称.system
使用 top free -h 等命令查找无果。怀疑是服务器命令可能被修改了或者进程隐藏无法查询。可以短期解决CPU占用问题,如果发现脚本重新启动并更换目录,重复上述步骤直到,系统恢复正常。这是一个linux可执行文件,我改成top了。下载到任意目录后指定。找到占用进程,将进程结束掉,找到启动位置,将脚本文件删除掉。终极解决方案是关闭多余的端口,打开服务器防护墙,重新安装系统。服务器使用的是centOS 7 云服务。近期发现服务器CPU使用率100%将目标文件夹的权限去掉。
2025-02-08 10:04:52
282
原创 centos8 设置java脚本开机自动启动
把这玩意直接搞里头。重启就能用 切记一定要现重新加载环境变量或者做个延迟启动,不然脚本会执行失败。有需求可以改一下jvm参数把JVM处理器换成-XX:+UseG1GC 加上就行 不加也没事。下面是执行脚本 直接复制就能用。
2025-02-07 15:05:27
253
原创 centOS8安装MySQL8设置开机自动启动失败
centOS8安装MySQL8 提示main process exited, code=exited, status=203/EXEC
2025-02-07 11:49:00
390
原创 centOS8 U盘安装时出现could not insert ‘‘: No such device
could not insert 'floppy': No such device
2025-02-05 17:55:12
696
原创 Spring Boot项目打包成Docker镜像获取resources目录下文件
Spring Boot项目打包成Docker镜像获取resources目录下文件
2023-05-22 10:48:48
1091
1
原创 MySQL特殊函数使用技巧
因为它会忽略异常,返回的执行结果影响行数为 0,它不会重复插入数据。通常情况下,我们在插入数据之前,一般会先查询一下,该数据是否存在。但如果插入数据的请求,有一定的并发量,这种做法就可能会产生重复的数据。需要注意的是 for update 前的 id 条件,必须是表的主键或者唯一索引,不然行锁可能会失效,有可能变成表锁。使用group_concat函数,可以轻松的把分组后,name 相同的数据拼接到一起,组成一个字符串,用逗号分隔。该语法会在插入数据之前判断,如果主键或唯一索引不存在,则插入数据。
2023-05-12 16:45:27
603
原创 Java 对象转换记录
本文介绍了两种从Java集合中提取特定字段的方法:使用Java 8的Stream API和Google的Guava库。Stream API通过stream()、map()和collect()方法,能够简洁高效地从appPermissionVoList中提取所有userId并存储到新列表中。Guava的Lists.transform方法则通过延迟计算和不可变性特性,提供了另一种转换列表元素的方式,适用于未升级到Java 8的项目。两种方法各有优势,开发者可根据项目需求选择合适的方式处理集合数据。
2023-04-04 15:56:49
121
原创 linux安装系统无法找到系统盘提示/dev/root does not exist
安装Centos&Linux 7.6系统且用U盘安装时,提示/dev/root does not exist英特尔Cascade Lake SP系统对于内核版本kernel-3.10.0-957.1.3.el7kernel-3.10.0-957.1.3.el7,会爆出警告并且U盘启动项无法识别找到。
2022-10-21 16:45:41
11244
原创 java 整合MQTT客户端和Windows安装服务端2
maven配置客户端代码客户端2客户端3controller测试类在地址栏输入 项目地址 请求 init接口 初始化即可
2022-06-10 11:58:28
671
原创 SpringBoot打包成.exe在windows上安装执行 Java打包exe程序
1.准备工作1.1 一个jar包,没有BUG能正常启动的jar包1.2 exe4j下载地址,一个将jar转换成exe的工具1.3 inno setup下载地址,一个将依赖和exe一起打成一个安装程序的工具2.开始2.1桌面上准备一个可以执行的jar包2.2 打开安装好的exe4j直接选择下一步进入界面,选择JAVA转EXE点击下一步,如数名称和输出路径点击下一步,选择启动模式下方有一个高级选项,需要设置打包后的程序兼容32和64位系统勾选上点击下一步,默认配置即可在
2022-03-14 18:11:40
2531
1
原创 Springboot使用@Scheduled定时任务无法多任务同时执行
在Spring Boot应用中,配置一个自定义的线程池任务调度器可以有效管理并发定时任务的执行。通过实现SchedulingConfigurer接口并创建ThreadPoolTaskScheduler Bean,可以动态设置线程池大小、线程名前缀、任务完成策略和拒绝策略等。线程池大小通常设置为处理器核心数的两倍,以优化资源使用。此外,设置线程池关闭时的等待时间和任务完成策略,可以确保应用在关闭时不会中断正在执行的任务,实现优雅关闭。
2021-12-28 17:16:16
802
2
原创 公司级MySQL团队开发规范
数据库对象命名规范数据库对象数据库对象全局命名规范数据库命名规范表命名规范字段命名规范索引命名规范视图命名规范存储过程命名规范函数命名规范触发器命名规范约束命名规范用户命名规范数据库对象设计规范存储引擎的选择字符集的选择表设计规范字段设计规范索引设计规范约束设计规范SQL使用规范select 检索的规范性操作的规范性程序上的约束数据库对象命名规范数据库对象数据库对象是数据库的组成部分,常见的有以下几种:表(Table )、索引(Index)、视图(View
2021-12-16 17:25:21
214
原创 clickHouse导入MySQL数据表的数据
MySQL引擎用于将远程的MySQL服务器中的表映射到ClickHouse中,并允许您对表进行insert和select查询,以方便您在ClickHouse与MySQL之间进行数据交换。MySQL数据库引擎会将对其的查询转换为MySQL语法并发送到MySQL服务器中,因此您可以执行诸如show tables或show create table之类的操作。ClickHouse使用mysql引擎可以与mysql数据库中的数据表建⽴映射,并通过SQL向其发起远程查询或插入数据,这是一个异步的过程,相当于ck
2021-09-22 14:32:50
2865
原创 clickHouse linux 环境 单机安装 部署
第一步 clickHouse官网查看安装教程首先,需要添加官方存储库:sudo yum install yum-utilssudo rpm --import https://repo.clickhouse.tech/CLICKHOUSE-KEY.GPGsudo yum-config-manager --add-repo https://repo.clickhouse.tech/rpm/stable/x86_64如果您想使用最新版本,请替换stable为testing(推荐用于您的测试环境)。p
2021-09-14 18:40:32
715
原创 去重和幂等的理解、区别以及实现
去重:是对请求或者消息在一定时间内进行去重幂等:实在保证请求或者消息在任意时间内进行处理,都需要保证它的结果是一致的去重和幂等的本质:唯一Key + 存储不同的业务场景,唯一Key是不一样的,由业务决定存储选择挺多的,比如本地缓存、redis、MySQL、HBase等等,具体选取什么,也和业务有关。比如在消息管理平台这个场景下,存储选择redis(读写优越),redis也有过期时间,方便解决一定时间内的问题,而唯一Key自然就是根据不同的业务构建不同的。比如 5分钟相同内容消息去重,我直接MD5请
2021-08-31 14:29:25
1553
转载 Java8 新特性自用总结
摘自 公众号:JavaGuide 我,一个10年老程序员,最近才开始用 Java8 新特性**Interface**interface 的设计初衷是面向抽象,提高扩展性。这也留有一点遗憾,Interface 修改的时候,实现它的类也必须跟着改。为了解决接口的修改与现有的实现不兼容的问题。新 interface 的方法可以用default 或 static修饰,这样就可以有方法体,实现类也不必重写此方法。一个 interface 中可以有多个方法被它们修饰,这 2 个修饰符的区别主要也是普通方法和
2021-08-30 19:39:54
233
原创 使用Java 调用 jython 报错 URI is not hierarchical
IllegalArgumentException: URI is not hierarchical] with root causejava.lang.IllegalArgumentException: URI is not hierarchical at java.io.File.<init>(File.java:418) at org.python.core.PrePy.getJarFileNameFromURL(PrePy.java:427) at org.python.core.
2021-08-23 17:17:05
1112
2
原创 JAVA面试题整理2024-08-20不断更新
Java面试 长期更新 服务限流和降级有什么区别 服务降级原理 服务限流原理(算法) 怎么实现令牌桶 令牌桶中令牌用对象还是计数器,各有什么优缺点(生命周期) 令牌生产和消费策略 令牌生产和消费在一个桶和两个桶怎么控制 怎么保证不脏写 介绍垃圾回收算法 介绍复制回收算法 哪种垃圾回收算法效率最低 详细介绍标记算法,标记清除流程 ...
2021-08-17 15:46:34
271
原创 Kafka基础知识整理
消息队列最核心的功能就是把生产的数据存储起来,然后给各个业务把数据再读出来。跟我们处理请求时不一样,我们在业务处理时可能会调别人的接口,可能会需要去查数据库等,这些业务都是非常耗时的,像Kafka在存储和读取这个过程中又做了很多的优化。我们往一个Topic发送消息或者读取消息时,实际内部是多个Patition在处理并行...
2021-08-10 14:39:03
883
原创 分享一下平时使用的分布式ID生成方式
一、为什么要用分布式ID?在说分布式ID的具体实现之前,我们来简单分析一下为什么用分布式ID?分布式ID应该满足哪些特征?1、什么是分布式ID?拿MySQL数据库举个栗子:在我们业务数据量不大的时候,单库单表完全可以支撑现有业务,数据再大一点搞个MySQL主从同步读写分离也能对付。但随着数据日渐增长,主从同步也扛不住了,就需要对数据库进行分库分表,但分库分表后需要有一个唯一ID来标识一条数据,数据库的自增ID显然不能满足需求;特别一点的如订单、优惠券也都需要有唯一ID做标识。此时一个能够生成全局唯
2021-07-14 16:56:25
138
原创 JVM/JMM/计算机网络
1.现在计算机往往是多核心的,每个核心下会有高速缓存。高速缓存的诞生是由于CPU与内存的速度存在差异,L1和L2缓存一般是每个核心独占一份的。2.为了
2021-06-23 15:45:30
126
转载 MySQL事务
一、事务的几大特性ACID 原子性、一致性、隔离行、持久性原子性:当前事务的操作同时成功或者同时失败。原子性由undo log日志来保证,因为undo log记载着数据修改前的信息。比如我们要insert一条数据,undo log会记录一条对应的delete日志,update 一条记录,undolog 会记录之前的旧值的update的记录。如果事务执行异常,执行回滚,innoDB引擎就是利用undolog 记录下的数据,来将数据恢复到事务开始之前。隔离性:在事务并发执行时,内部的操作不能互相干扰。如果
2021-06-17 16:35:47
114
原创 java 基于jlibmodbus 实现 ModBusTCP
依赖<dependency><groupId>com.intelligt.modbus</groupId><artifactId>jlibmodbus</artifactId><version>1.2.9.7</version></dependency> public static void main(String[] args) throws ModbusInitException, Err
2021-06-07 11:16:57
1740
原创 MySQL索引
InnoDB引擎索引:索引可以加快查询速度,将无序的数据变成变成有序(有序可以加快检索速度)InnoDB引擎索引的底层数据结构是B+树。Mysql的数据是存储在硬盘,在查询时一般不能一次性把全部数据加载到内存中,红黑树是二叉查找树的变种,一个Node节点只能存储一个Key和一个ValueB和B+树和红黑树不一样,他们算是多路搜索树,相较于二叉搜索树而言,一个Node节点可以存储的信息更多,多路搜索树的高度会比二叉搜索树更低。B+树相对于B树而言,它有两种特性一、B+树非叶子节点不存储数据,在相同的
2021-06-07 11:12:04
137
原创 全网最新 java 开发 OPC 实现 DA 通讯控制点位 西门子
OPC SERVER软件使用MatrikonOPC: 使用Matrikon OPC Server SimulationKEPServer V6: 使用KEPServerEX 6安装教程参考: https://www.cnblogs.com/ioufev/p/9366426.html
2021-05-12 16:43:26
2545
Socket请求第三方接口返回值有很多NUL
2019-12-28
求帅哥帮忙.我配置了一个线程池一直注入不进去。求大神帮忙看看
2019-08-20
TA创建的收藏夹 TA关注的收藏夹
TA关注的人