- 博客(64)
- 收藏
- 关注
原创 Linux安装Elasticsearch详细教程
M1(Arm) 系列 Mac 用户建议选择 ES 7.8.x 以上版本,因为考虑到 ELK 不同产品自身兼容性,7.8.x以上版本原生支持 Arm 原生 JDK。ES 8.x 及之后版本,选择 Java 17 或者 Java 18,建议 Java 17,因为对应版本的 Logstash 不支持 Java 18。注:如果Linux服务本来没有配置jdk,则会直接使用es目录下默认的jdk,反而不会报错。#修改/etc/sudoers文件,进入超级用户,因为没有写权限,所以要先把写权限加上。
2025-04-11 16:40:19
531
原创 单点登录云平台子系统集成方式
log.warn("参数校验失败异常:-----------------" + fieldError.getDefaultMessage());log.warn("自定义异常:-----------------" + e.getMessage());// 取得token。log.warn("参数校验失败异常:-----------------" + message);4. 请保持网络连接;
2025-04-11 13:59:14
855
原创 centos 编译安装 python 和 openssl
安装环境:centos 7.9 : python 3.10.5 和 openssl 3.0.12centos 6.10 : python 3.10.5 和 openssl 1.1.1两个环境都能安装成功,可以正常使用。
2025-04-08 11:11:23
364
原创 Vue实现动态数据透视表(交叉表)
需求:需要根据前端选择的横维度、竖维度、值去生成一个动态的表格,然后把交叉的值放入到对应的横维度和竖维度之下,其实就是excel里面的数据透视表功能,查询交叉语句为sql语句。获取动态表头方法:通过前端传过来的数据库字段的值,distinct查出这个字段有什么值,然后转化成对应的map集合发给前端实现动态表格。选择一下横维度、竖维度、值之后点击查询即可出现交叉结果。其余的条件都是过滤条件。
2025-03-27 20:08:09
420
原创 Hutool创建数据源工厂动态查询不同数据库不同数据表的数据
需要我去通过各种不同的id找到不同的表,最后的重点是通过数据库表里存的连接信息,用户名和密码去指定数据库类型(比如MySql、DM等)数据库做链接然后找到对应数据表里的所有信息。Hutool是一个小而全的Java工具类库,通过静态方法封装,降低相关API的学习成本,提高工作效率,使Java拥有函数式语言般的优雅,让Java语言也可以“甜甜的”。Hutool中的工具方法来自每个用户的精雕细琢,它涵盖了Java开发底层代码中的方方面面,它既是大型项目开发中解决小问题的利器,也是小型项目中的效率担当;
2025-02-20 16:10:04
320
原创 DeepSeek-R1+对话页面本地部署保姆级教程
选择好模型之后,点击右侧这个按钮,复制指令,这里是:ollama run deepseek-r1:7b。接下来让我们回到官网,找到models去寻找deepseek-r1(现在很火,第一个就是)安装完成后,你会发现你的Docker界面里多了Open WebUI的条目。但是在命令行窗口下对话,还是太抽象,我们需要一个美观的图文交互界面。下载完成之后选择安装,安装完成之后任务栏会有一个常驻的小羊驼标志。图形界面的DeepSeek-R1,准备就绪,随时待命!使用win+r,输入cmd召唤出命令行窗口。
2025-02-08 14:52:54
624
原创 使用NPS内网穿透图文详细教程
NPS及内网穿透介绍:NPS是一款轻量级、高性能、功能强大的内网穿透代理服务器,以下是关于它的详细介绍:内网穿透是一种技术,允许通过公网访问内网的设备和服务。NPS通过在公网上搭建一个服务器,然后将内网设备和服务通过一个安全的隧道连接到这个服务器上,从而实现公网访问。协议支持全面:兼容几乎所有常用协议,如TCP、UDP、HTTP(S)、SOCKS5、P2P等。全平台兼容:支持Linux、Windows、Mac系统,还支持一键安装为系统服务,简化操作流程。控制全面:服务端和客户端控制一体化,管理更加便捷。HT
2025-01-14 15:17:32
1674
原创 vue使用iconfont图标
这样就会把图标添加到图标库就可以使用<i>来使用这个图标。1.首先找到想要添加的图标选择添加到购物车。4.复制之后,粘贴到index.html下。记得class里要加上iconfont。是配置未点击的颜色以及点击以后的颜色。3.点击生成在线链接。
2024-12-30 10:41:08
314
原创 获取数据库中字段的数据作为下拉框选项
如题:当我们想把数据库中字段的数据作为对应的下拉框选项,并且数据库字段很多的时候。应该在后端获取这个表里有多少字段,遍历这个表,拿到所有的字段并放到一个map集合里,我们看看代码。这个表里有大概四五十个字段,我们不能每一个字段都写一个对应获取的方法,所以我们在controller层直接使用这个方法。同时要定义一个selectSource数据来接受返回的字段。连接到数据库后,遍历字段个数并且插入到map集合里。
2024-12-24 09:49:20
482
原创 实现Excel文件和其他文件导出为压缩包,并导入
导出后的文件组成:excel文件:代码拆解:通过前端传来的menuIds进行遍历,把每一条数据插到excel里面并且通过menuIds找到文件名与之对应的ktr文件放到文件夹中。我这里的id和groupId位数特别长,所以对这两列做了默认为文本的处理,否则会变成科学计数法,会丢精。具体如下:把ktr文件放到ktr命名的文件夹中,并关闭压缩文件流导出就完成了。
2024-11-26 17:52:49
629
原创 改写抛出异常的方法
我判断这个条数据是不是在另一个表里已经审核完成,如果没有审核完成就抛出异常,只想拼接一个设备编号未完成审核的字符串,让我们ctrl点进去exception里面看看。只是略微改变了参数,不接收错误码的code和msg,只单纯传一个字符串抛给前端显示。芋道框架的抛出异常的方法很好用,但是要配合错误码也就是api里的ErrorCode。但是我们如果不需要错误码,想自己定义一个异常我们就要改写一下他的方法。非常好用,欢迎大家加我的微信我们一起交流:sxy0802000。绿色的就是我新写的方法。
2024-11-21 09:50:45
198
原创 芋道框架审批流如何实现(Cloud+Vue3)
这是我自己写的一个改变状态的rpc,大家可以自己写一个,我相信并不难,我放这大家可以参考。这个方法会根据返回的审批id去查找符合条件的数据集合,也就是同一时间审批的那一批数据。记住这里的PROCESS_KEY和prefix,后面有用,这是唯一的标识。这里的表单查看地址对应了一个只能查看的页面用于审批的时候能够看到审批的信息。改变状态的方法就写好了,接下来我们去Bpm模块写一个监听方法。
2024-11-05 17:04:31
710
原创 微服务面试篇
TCC模式的每个阶段是做什么的?Try:资源检查和预留Confirm:业务执行和提交Cancel:预留资源的释放TCC的优点是什么?一阶段完成直接提交事务,释放数据库资源,性能好相比AT模型,无需生成快照,无需使用全局锁,性能最强不依赖数据库事务,而是依赖补偿操作,可以用于非事务型数据库TCC的缺点是什么?有代码侵入,需要人为编写try、Confirm和Cancel接口,太麻烦软状态,事务是最终一致需要考虑Confirm和Cancel的失败情况,做好幂等处理、事务悬挂和空回滚处理。
2024-10-22 21:17:54
1007
原创 echarts柱图前后端代码SpringCloud+Vue3
♥️作者:小宋1021🤵♂️个人主页:小宋1021主页♥️坚持分析平时学习到的项目以及学习到的知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油。
2024-10-15 15:24:20
482
2
原创 echarts饼图前后端代码SpringCloud+Vue3
♥️作者:小宋1021🤵♂️个人主页:小宋1021主页♥️坚持分析平时学习到的项目以及学习到的知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油。
2024-10-15 15:15:02
436
原创 Redis面试篇
Sentinel的三个作用是什么?集群监控故障恢复状态通知Sentinel如何判断一个redis实例是否健康?每隔1秒发送一次ping命令,如果超过一定时间没有相向则认为是主观下线(sdown如果大多数sentinel都认为实例主观下线,则判定服务客观下线(odown故障转移步骤有哪些?首先要在sentinel中选出一个leader,由leader执行failover选定一个slave作为新的master,执行,切换到master模式然后让所有节点都执行slaveof新master。
2024-10-15 09:49:42
1026
原创 高性能分布式搜索引擎Elasticsearch详解
分词器的作用是什么?创建倒排索引时,对文档分词用户搜索时,对输入的内容分词IK分词器有几种模式?ik_smart:智能切分,粗粒度:最细切分,细粒度IK分词器如何拓展词条?如何停用词条?利用config目录的文件添加拓展词典和停用词典在词典中添加拓展词条或者停用词条。
2024-09-20 22:32:38
1509
原创 玩转RabbitMQ声明队列交换机、消息转换器
♥️作者:小宋1021🤵♂️:小宋1021主页♥️坚持分析平时学习到的项目以及学习到的知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油在之前我们都是基于RabbitMQ控制台来创建队列、交换机。但是在实际开发时,队列和交换机是程序员定义的,将来项目上线,又要交给运维去创建。那么程序员就需要把程序中运行的所有队列和交换机都写下来,交给运维。在这个过程中是很容易出现错误的。因此推荐的做法是由程序启动时检查队列和交换机是否存在,如果不存在自动创建。
2024-09-20 00:03:32
1326
原创 RabbitMQ:交换机详解(Fanout交换机、Direct交换机、Topic交换机)
交换机的作用是什么?接收publisher发送的消息将消息按照规则路由到与之绑定的队列不能缓存消息,路由失败,消息丢失FanoutExchange的会将消息路由到每个绑定的队列描述下Direct交换机与Fanout交换机的差异?Fanout交换机将消息路由给每一个与之绑定的队列Direct交换机根据RoutingKey判断路由给哪个队列如果多个队列具有相同的RoutingKey,则与Fanout功能类似Topic交换机描述下Direct交换机与Topic交换机的差异?
2024-09-18 21:58:39
1790
原创 RabbitMQ:WorkQueues模型
♥️作者:小宋1021🤵♂️:小宋1021主页♥️坚持分析平时学习到的项目以及学习到的知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油Work queues,任务模型。简单来说就是。当消息处理比较耗时的时候,可能生产消息的速度会远远大于消息的消费速度。长此以往,消息就会堆积越来越多,无法及时处理。此时就可以使用work 模型,了。接下来,我们就来模拟这样的场景。基本思路如下:1.在RabbitMQ的控制台创建一个队列,名为work.queue。
2024-09-18 20:32:31
731
原创 java的Excel导出,数组与业务字典匹配并去掉最后一个逗号
由于不想和DO混用,就单独为导出的字段建立实体类,一方面是容易使用 @ExcelProperty注解,方便观察,另一方面是有些字段在数据库存的是业务字典的value,是Integer类型,我需要再定义一个String类型的字段来接收于业务字典匹配完成后的label的值并完成导出。场景:由于业务需求的变化,老师的科目由单个变成了多个,我在存储的时候存储的是数组的字符串,类似于:“[103, 202, 203, 204]”,这就需要去掉左右两侧[]以及拆分成字符串数组再与业务字典进行匹配。
2024-09-18 16:30:10
1338
原创 SpringAMQP快速入门
♥️作者:小宋1021🤵♂️:小宋1021主页♥️坚持分析平时学习到的项目以及学习到的知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油将来我们开发业务功能的时候,肯定不会在控制台收发消息,而是应该基于编程的方式。由于RabbitMQ采用了AMQP协议,因此它具备跨语言的特性。任何语言只要遵循AMQP协议收发消息,都可以与RabbitMQ交互。并且RabbitMQ官方也提供了各种不同语言的客户端。
2024-09-09 23:56:30
1262
1
原创 RabbitMQ异步通信详解
♥️作者:小宋1021🤵♂️:小宋1021主页♥️坚持分析平时学习到的项目以及学习到的知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油微服务一旦拆分,必然涉及到服务之间的相互调用,目前我们服务之间调用采用的都是基于OpenFeign的调用。这种调用中,调用者发起请求后需要服务提供者执行业务返回结果后,才能继续执行后面的业务。也就是说调用者在调用过程中处于阻塞状态,因此我们称这种调用方式为,也可以叫。但在很多场景下,我们可能需要采用的方式,为什么呢?
2024-09-08 23:36:20
1397
原创 SpringCloud:服务保护和分布式事务详解
核心库(Jar包):不依赖任何框架/库,能够运行于 Java 8 及以上的版本的运行时环境,同时对 Dubbo / Spring Cloud 等框架也有较好的支持。在项目中引入依赖即可实现服务限流、隔离、熔断等功能。控制台(Dashboard):Dashboard 主要负责管理推送规则、监控、管理机器信息等。为了方便监控微服务,我们先把Sentinel的控制台搭建出来。
2024-08-19 08:30:00
1670
原创 微服务通过nacos实现动态路由
♥️作者:小宋1021🤵♂️:小宋1021主页♥️坚持分析平时学习到的项目以及学习到的知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油网关的路由配置全部是在项目启动时由在项目启动的时候加载,并且一经加载就会缓存到内存中的路由表内(一个Map),不会改变。也不会监听路由变更,所以,我们无法利用配置热更新来实现路由更新。因此,我们必须监听Nacos的配置变更,然后手动把最新的路由更新到路由表中。这里有两个难点:如何监听Nacos配置变更?如何把路由信息更新到路由表?
2024-08-18 12:09:06
1793
原创 多个文件上传
♥️作者:小宋1021🤵♂️:小宋1021主页♥️坚持分析平时学习到的项目以及学习到的知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油。
2024-08-17 13:13:51
1139
原创 SpringCloud微服务配置管理、配置热更新
不知道大家会不会有这样的问题:网关路由在配置文件中写死了,如果变更必须重启微服务某些业务配置在配置文件中写死了,每次修改都要重启服务每个微服务都有很多重复的配置,维护成本高这些问题都可以通过统一的解决。而Nacos不仅仅具备注册中心功能,也具备配置管理的功能:微服务共享的配置可以统一交给Nacos保存和管理,在Nacos控制台修改配置后,Nacos会将配置变更推送给相关的微服务,并且无需重启即可生效,实现配置热更新。
2024-08-16 22:52:12
1370
原创 网关路由-路由属性
无论是还是都支持自定义,只不过编码方式、使用方式略有差别。自定义不是直接实现,而是实现。@Component@Override@Override// 获取请求// 编写过滤器逻辑System.out.println("过滤器执行了");// 放行注意:该类的名称一定要以为后缀!然后在yaml配置中这样使用:spring:cloud:gateway:- PrintAny # 此处直接以自定义的GatewayFilterFactory类名称前缀类声明过滤器。
2024-08-12 22:46:20
1418
原创 刚毕业大学生对低代码的接触以及看法
然后我们公司就解除了芋道开发框架,让我们使用芋道开发,由于我们公司是小公司总共没几个开发,加上我当时不太会SpringCloud也没有接触过开发框架,于是一上手就导致我很不知所措,遇到了一系列的问题,所以我也把这些问题一一总结下来写成了“万字芋道讲解”放在了我的主页里,如果有小伙伴需要的话请去我的主页去看,也可以添加我的微信:sxy0802000,我们一起讨论。这表明,即使是低代码平台,也需要IT部门的参与和监督,以确保应用的安全性和质量。然而,低代码平台在提高效率的同时,也可能带来质量和安全的隐患。
2024-08-08 13:43:33
1077
原创 微服务网关及其配置
什么是网关?顾明思议,网关就是络的口。数据在网络间传输,从一个网络传输到另一网络时就需要经过网关来做数据的。更通俗的来讲,网关就像是以前园区传达室的大爷。外面的人要想进入园区,必须经过大爷的认可,如果你是不怀好意的人,肯定被直接拦截。外面的人要传话或送信,要找大爷。大爷帮你带给目标人。现在,微服务网关就起到同样的作用。前端请求不能直接访问微服务,而是要请求网关:网关可以做安全控制,也就是登录身份校验,校验通过才放行通过认证后,网关再根据请求判断应该访问哪个微服务,将请求转发过去。
2024-08-07 23:13:04
1091
原创 SpirngCloud+Vue3通过id批量修改某一个字段的值
♥️作者:小宋1021🤵♂️个人主页:小宋1021主页♥️坚持分析平时学习到的项目以及学习到的软件开发知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油场景:课程和学生是一对多的关系,每一个课程对应多个学生,在学生上完课之后要做一个消课记录,“已到”就是消课成功,“未到”就是没有消课。通过数据库里面的消课状态字段来记录,0:未消 1:已消。这就需要前端传一个id的数组,后端遍历这个id数组,去改变每一条id下的消课状态属性。我们来看看是怎么实现的。
2024-08-06 09:50:37
1465
原创 SpringCloud+Vue3一个字段多个存储以及回显
♥️作者:小宋1021🤵♂️个人主页:小宋1021主页♥️坚持分析平时学习到的项目以及学习到的软件开发知识,和大家一起努力呀!!!🎈🎈加油!加油!加油!加油。
2024-08-01 13:28:48
506
原创 Vue3选择框选择不同的值输入框刷新变化
实现方式:这个输入框我做的是业务字典实际的值是0和1,在点击选择框的时候用v-if判断选择的值是1还是0,如果是0则是一个输入信息,如果是1则又是另一个输入信息。场景:新增的时候根据选择框的不同来改变输入信息。
2024-08-01 09:28:06
455
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人