- 博客(82)
- 收藏
- 关注
原创 minio整合springboot解决视频文件上传下载问题
1.本地安装minio提供官网地址下载minio官网下载服务端在服务端所在文件下打开cmd启动命令minio.exe server /data打开地址输入默认的用户名和密码服务地址:http://127.0.0.1:9000默认账号:minioadmin默认密码:minioadmin2.Springboot整合miniomaven仓库将需要的minio依赖复制下载,注意与springboot是否适配https://mvnrepository.com/仓库地址将依赖复制到
2022-03-27 11:20:12
4108
原创 【git】git为什么会出现双向合并
合并的核心是整合两个分支的分歧修改(从共同祖先之后的所有修改),而非单向覆盖;只有“当前分支”会吸收目标分支的修改,目标分支不会自动同步;若想让两个分支完全一致,需要在两个分支上分别执行 merge(或用rebase同步历史)。merge 是“当前分支拿目标分支的修改”,不是“两个分支互相推送修改”——你看到的“相互合并”,是两次合并操作的结果,而非 Git 的默认行为。
2025-12-18 13:46:23
905
原创 函数式接口
函数式接口(Functional Interface)是Java 8 引入的核心概念,本质是:有且仅有一个抽象方法的接口(可包含多个默认方法/静态方法/私有方法),用于适配 Lambda 表达式和方法引用。// 自定义函数式接口:接收 2 个 Integer,返回 Integer(求和)// 唯一抽象方法// 允许添加默认方法(不影响函数式接口判定)System.out.println("计算结果:" + result);// 允许添加静态方法// 使用。
2025-12-09 15:09:00
605
原创 如何获取命令行的配置
在 Spring Boot 工程中获取命令行属性,核心是利用 Spring 框架对命令行参数的封装(比原生 Java 更便捷),同时兼容 Spring Boot 的配置优先级规则。以下是。
2025-12-09 13:50:36
323
原创 标题调用外部接口apifox与浏览器显示不一致
工具与浏览器的处理差异:Apifox 等接口工具会按 “后端返回的原始顺序” 展示 JSON 对象,而浏览器(尤其是 Chrome、Edge 等)会默认对 JSON 对象的数字键进行升序排序,非数字键可能按插入顺序或哈希顺序展示。浏览器调试时查看原始数据:在浏览器开发者工具的 “Network” 面板,选择响应后切换到 “Response”(而非 “Preview”),可查看未被浏览器处理的原始返回数据,确认是否是后端本身返回顺序不同。若返回的是数组([] 包裹),则会严格保留原始顺序。
2025-11-21 10:09:53
190
原创 如何解决spring循环依赖
Spring在创建Bean时,需要先实例化依赖的Bean。但在循环依赖的情况下,两个Bean都需要对方先创建,导致。当Bean A依赖于Bean B,而Bean B又依赖于Bean A时,就形成了循环依赖。循环依赖通常是代码设计不合理的信号,优先通过重构消除依赖关系。只有在无法避免的情况下,才考虑使用。但这种方法只是掩盖了问题,并没有真正解决依赖设计的缺陷,可能导致运行时问题。注解会告诉Spring在运行时才注入依赖,而不是在初始化时,从而打破循环。问题,即两个或多个Bean之间相互依赖,形成了一个闭环。
2025-06-04 17:50:23
446
原创 Java面试复习思路
面试不仅是对你技术知识的测试,也是对你解决问题能力、学习能力和团队合作精神的评估。保持积极的态度,诚实回答问题,即使遇到不会的问题也不要紧张,可以尝试着说出你的思考过程。面试失利乃常事,首次尝试未必成。切莫因此而气馁,冷静分析败因踪。回顾过程细思量,自身不足逐一清。汲取经验再前行,开启下次新征程。收拾心情展自信,机会在前定能赢。
2024-06-24 16:57:52
682
原创 解决微信支付定时更新证书间隔问题
throw new IllegalArgumentException(“serialNumber或message或signature为空”);throw new IllegalArgumentException(“credentials或apiv3Key为空”);在原有CertificatesVerifier基础上,增加定时更新证书功能(默认1小时)
2024-06-11 11:01:23
687
1
原创 kafka简介
partition中的数据是有序的,partition间的数据丢失了数据的顺序。副本不会被消费者消费,副本只用于防止数据丢失,即消费者不从为follower的partition中消费数据,而是从为leader的partition中读取数据。Kafka在保证了较高的处理速度的同时,又能保证数据处理的低延迟和数据的零丢失。Apache Kafka是一个分布式的发布-订阅消息系统,能够支撑海量数据的数据传递。每条消息都有一个当前Partition下唯一的64字节的offset,它指明了这条消息的起始位置。
2023-08-02 09:20:18
1211
原创 mqtt理解【持续更新】
mqtt是一种基于发布订阅的轻量级通信协议,协议简历在tcp/ip上,作为一种低开销、低带宽占用的即时通讯协议广泛应用在物联网、小型设备、移动应用。qos是Quality of Service levels,消息可靠性投递的机制。qos=0会发生丢失和消息重复。qos=1会至少发送一次消息给订阅者,会出现消息重复。qos=2保证消息仅发送到目的地一次,带有唯一id的消息会存储2次,一次来自消费者,一次来自生产者。这种模式下网络消耗最高,因为发送方和接收方之间需要2个流。
2023-05-15 16:51:58
1031
原创 springboot整合websocket
handleTextMessage()方法通过英文方法名可知,用于处理文本信息。WebSocketSession的方法sendMessage可以向前台发送消息,CloseStatus的getReason方法获得关闭的原因。通过WebSocketSession的sendMessage方法,将创建的TextMessage对象给前台。afterConnectionEstablished方法通过英文方法名可知,用于连接确立之后。setAllowedOrigins()方法设置允许源,传递星号,否则跨域。
2023-04-10 15:52:36
1544
原创 Elasticsearch的安装
①高扩展的分布式全文检索引擎②实时的存储、检索数据③处理大数据PB级别数据④通过Restful API隐藏Lucene复杂性。
2023-04-06 12:59:31
380
原创 rabbitmq的灵魂拷问问题及解答
mq是一个消息队列,mq有三个优点:解耦、异步、削峰。解耦:消费者和生产者,只专注自己的逻辑,生产者只管理发送消息,消费者只管理消费消息。异步:传统方式是等到上一条消息消费完成后再发送下一条消息。生产者在发送消息后不需要关心消费方是否能消费完成,还可以继续发送其他消息。削峰:传统的消息通讯,消费者一下子发送大量消息到消费者,消费者的处理压力很大。如果使用mq达到缓冲,一旦流量超出消费者处理范围,只需要逐条慢慢消费。可。
2023-03-29 17:15:12
284
原创 springboot整合rabbitmq优先队列
优先队列,是消息阻塞中形成的,所以要先生产消息,后开启消费者。否则生产一条消息消费一条消息,不存在阻塞,无法排序。
2023-03-27 15:55:06
349
原创 springboot整合rabbitmq回退消息
果发现该消息不可路由,那么消息会被直接丢弃,此时生产者是不知道消息被丢弃这个事件的。那么如何让无法被路由的消息帮我想办法处理一下?最起码通知我一声,我好自己处理啊。通过设置 mandatory 参数可以在当消息传递过程中不可达目的地时将消息返回给生产者。在仅开启了生产者确认机制的情况下,交换机接收到消息后,会直接给消息生产者发送确认消息,如。简单说RoutingKey错误,交换机正常,会直接丢西消息。
2023-03-27 14:44:44
466
原创 springboot整合rabbitmq发布确认
出现情况:在生产环境中rabbitmq服务器由于一些不明原因,导致rabbitmq重启,在重启期间生产者消息投递失败,导致消息丢失,需要手动处理和恢复。在rabbitmq集群不可用,无法投递消息的时候。
2023-03-27 14:24:49
458
原创 springboot的异步编程
第一步:线程池配置类上使用@EnableAsync,@Bean注解定义线程池名称。配置线程池的大小、最大线程数、队列容量、活跃时间、线程名称前缀、拒绝策略。第二步:使用@Async(“线程池名称”)实现异步编程。异步编程的含义:当前任务不受其他任务影响。springboot的异步编程。
2023-03-16 16:20:09
215
原创 rabbitmq的七种工作模式之五种
Exchange交换机只负责转发消息,不具备存储消息的能力,因此如何没有任何队列与Exchange绑定,或者没有符合路由规则的队列,那么消息会丢失!注意:channel通道在发布消息时的routingKey是队列名称匹配正则,也就是说routingKey决定向哪个队列发送消息。类比:比工作队列增加了交换机、队列。结构:1个生产者+1个交换机+多个队列+多个消费者。结构:1个生产者+1个交换机+多个队列+多个消费者。结构:1个生产者+1个交换机+多个队列+多个消费者。结构:1个生产者+1个队列+1个消费者。
2023-03-14 09:39:45
371
原创 rabbitmq在linux系统下安装步骤
重要信息:rabbitmq是用erlang语言开发的,所以erlang的版本要和rabbitmq版本对应。查找loopback_users,去掉的注释,记住这是用户,i是修改。将rabbitmq软件包放在英文文件夹下,路径中不要有中文,防止因为一些乱码的问题。第四步:上传后,进入目录,分别安装erlang环境,socat,rabbitmq。重要信息:RabbitMQ Tutorials手册,描述了工作模式。第五步,启动服务,停止服务,重启服务。第七步,访问管理控制台地址。
2023-02-27 10:32:09
952
原创 Error running ‘XXXApplication‘: Command line is too long. Shorten command line forXXX
Error running 'XXXApplication': Command line is too long. Shorten command line forXXX
2023-02-08 13:23:20
320
原创 flowable知识点理解
这些表存储运行时信息,例如流程实例(process instance)、用户任务(user task)、变量(variable)、作业(job)等。将存档所有流程实例及活动实例,并保持变量值与提交的表单参数的同步,以保证所有通过表单进行的用户操作都可追踪、可审计。这个级别存储所有audit级别存储的信息,加上所有其他细节(主要是流程变量的更新)。可以使用DDL文件(默认的包含mysql的文件)。将已有的BPMN20.XML存储入数据库,流程定义转换为内部的、可执行的对象模型。②流程转为可执行的对象模型。
2022-11-25 10:32:57
1478
原创 报错error: remote origin already exists.gitee-将已经写好的工程放入gitee仓库
本文解决将自己写好的工程放入gitee仓库里。先到需要上传项目的文件夹下。
2022-11-23 17:26:57
176
原创 docker安装部署minio并整合springboot封装
所谓的挂载其实就是将容器目录和宿主机目录进行绑定了,操作宿主机目录,容器目录也会变化,操作容器目录,宿主机目录也会变化。4.创建Minio挂载的配置文件( /home/minio/config)和存储上传目录( /home/minio/data)假如没有使用-v挂载目录,那他在宿主机的存储位置的文件会直接删除的。还有容器当中的目录也是必须是绝对路径(根路径就是带/的)。5.安装容器相关的。注意在执行命令的时候,他是会自动在宿主机当中创建目录的。minio所上传的文件默认都是存储在容器的data目录下的!
2022-10-24 17:10:33
4278
原创 docker安装postgis
5.安装容器相关的。docker-ce(社区版)docker-ee(企业版)8.新建一个表创建geometry类型看看是否可以。3.检查容器,列出正在运行的postgis容器。4.安装容器之前,更新yum软件包索引。4.启用组件(如果已存在不用修改)7.验证是否安装成功docker。1.拉取postgis的镜像。9.创建geometry类型。2.安装需要的yum安装包。2.创建postgis容器。6.进入postgis容器。2.查询postgis版本。3.加载postgis组件。7.让用户有创建数据权限。
2022-10-14 14:38:16
2855
2
原创 linux系统安装redis步骤
8.创建文件夹myconfig,在opt目录下redis.conf文件复制到myconfig中。1.使用xftp7将redis解压包放入opt文件夹中。10.用配置文件启动redis-server服务端。7.进入默认安装路径/usr/local/bin。/daemonize 搜索daemonize字符。5.在redis解压后的文件夹里使用编译命令。9.将redis.conf文件里修改成yes。3.进入redis解压后的文件夹里,11.用redis-cli启动客户端。6.redis解压后的文件安装命令。
2022-09-28 11:00:40
594
1
原创 postGIS函数
ST_ExteriorRing(geometry) —— 以线串的形式返回多边形最外面的环。ST_NumGeometries(geometry) —— 返回集合中的组成部分的数量。ST_GeometryN(geometry, n) —— 返回集合中指定的组成部分。ST_Area(geometry) —— 返回集合中所有多边形组成部分的总面积。ST_GeometryType(geometry) —— 返回几何图形的类型。ST_Perimeter(geometry) —— 返回所有环的长度。
2022-09-26 16:05:38
929
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅