- 博客(421)
- 收藏
- 关注
原创 idea运行报错:启动命令过长
3、在Edit Configurations界面下方新增的Shorten command line选项中选择JAR manifest或classpath file。2、点击Modify options设置,勾选Shorten command line。JAVA项目,运行的时候报错。
2025-03-12 18:24:15
258
原创 Spring Boot 单体应用升级 Spring Cloud 微服务最佳实践
通过以下示例,我们完整的演示了一个 Spring Boot 架构的单体应用集群,如何平滑的升级为一个 Spring Cloud 微服务集群,本文章包含源码、讲解、原理说明。在示例中,我们有如下基于 Spring Boot 开发的应用架构:我们这里列出来的只是一种示例架构。基于 Spring Boot 构建的应用架构变化多样,比如可能如下一些常用的架构,但不论哪种架构,升级 Spring Cloud 的大致改造方式都是类似的(都可以转为基于 Nacos 注册中心的地址发现与负载均衡)。
2025-01-17 09:30:55
1166
原创 Spring Cloud Alibaba 最佳实践
Spring Cloud Alibaba(下文简称为SCA) 致力于提供微服务开发的一站式解决方案。此项目包含开发分布式应用服务的必需组件,方便开发者通过 Spring Cloud 编程模型轻松使用这些组件来开发分布式应用服务。依托 SCA,您只需要添加一些注解和少量配置,就可以将 Spring Cloud 应用接入阿里分布式应用解决方案,通过阿里中间件来迅速搭建分布式应用系统。
2025-01-17 09:30:26
810
原创 Spring AI Alibaba 和通义千问定制自己的代码助手
Prompt 最开始只是简单的字符串,随着时间的推移,Prompt 逐渐开始包含特定的占位符,例如 AI 模型可以识别的 “USER:”、“SYSTEM:” 等,详细的介绍可以参考Spring AI Alibaba文档。这点代码对他来说信息量很少,即学即会。其实这小助手做了三个版本,第一个是纯粹使用Function Calling做的,里面生成代码的逻辑不是通过大模型实时生成的,而是拿到schema信息后循环拼凑起来的,大模型在里面的作用就是增加注释,然后结合对话记忆功能,在多次对话中可以进行代码的优化。
2025-01-16 09:35:10
864
原创 轻松掌握AI编程神器——Cursor安装和使用介绍
本文只是一个使用 Cursor 的简单示例,帮助大家如何安装和使用。大家可以根据自己的业务,让它帮你写一些基础的代码,利用好 Cursor 可以大大提高工作效率。需要注意的是,虽然可以通过语言来生成代码,但目前还不完美,如果生成的代码不太符合要求,可以优化自己的表达,交代再清楚一些;也可以尝试重新生成;还可以通过对话让它不断优化调整以便符合你的要求。估计未来人工智能将带来开发工具的更大变革。还有注意数据安全,不要将敏感数据和代码贴出来,以减少泄露风险。
2025-01-16 09:20:36
4569
原创 轻松掌握AI编程神器——零基础Cursor使用教程
Cursor,是AI编程工具。比如下面的这个游戏,全部是由写的,一行代码都没有写!在文章的最后,还附上国内用户充值Cursor的详细方法。
2025-01-15 11:53:31
9641
原创 xxl-job快速入门(最全)
某电商平台需要每天上午10点,下午3点,晚上8点发放一批优惠券某银行系统需要在信用卡到期还款日的前三天进行短信提醒某财务系统需要在每天凌晨0:10分结算前一天的财务数据,统计汇总以上场景就是任务调度所需要解决的问题任务调度是为了自动完成特定任务,在约定的特定时刻去执行任务的过程XXL-Job:是大众点评的分布式任务调度平台,是一个轻量级分布式任务调度平台, 其核心设计目标是开发迅速、学习简单、轻量级、易扩展大众点评目前已接入XXL-JOB,该系统在内部已调度约100万次,表现优异。
2025-01-15 10:12:27
1233
原创 Elasticsearch——数据聚合
聚合(aggregations)可以让我们极其方便的实现对数据的统计、分析、运算。实现这些统计功能的比数据库的sql要方便的多,而且查询速度非常快,可以实现近实时搜索效果。
2025-01-15 09:46:14
781
原创 Job for nginx.service failed because the control process exited with error code. See “systemctl stat
启动nginx服务时如果遇到这个错误 JJob for nginx.service failed because the control process exited with error code. See "systemctl status nginx.service" and "journalctl -xe" for details.
2025-01-13 14:34:13
774
原创 Elasticsearch——RestClient查询
之前说过,由于Elasticsearch对外暴露的接口都是Restful风格的接口,因此JavaAPI调用就是在发送Http请求。这里关键的API有两个,一个是request.source(),它构建的就是DSL中的完整JSON参数。这个参数的格式完全参考DSL查询语句的JSON结构,因此我们在学习的过程中,会不断的把JavaAPI与DSL语句对比。所有的查询条件都是由QueryBuilders来构建的,叶子查询也不例外。因此整套代码中变化的部分仅仅是query条件构造的方式,其它不动。
2025-01-10 14:18:11
1003
原创 Elasticsearch——DSL查询
Elasticsearch提供了基于JSON的DSL(Domain Specific Language)语句来定义查询条件,其JavaAPI就是在组织DSL条件。在查询以后,还可以对查询的结果做处理。
2025-01-10 14:17:40
888
原创 Elasticsearch——RestAPI
ES官方提供了各种不同语言的客户端,用来操作ES。这些客户端的本质就是组装DSL语句,通过http请求发送给ES。
2025-01-09 09:58:21
1119
原创 Elasticsearch——文档操作
根据rest风格,新增是post,查询应该是get,不过查询一般都需要条件,这里我们把文档id带上。注意:如果根据id删除时,id不存在,第二步的新增也会执行,也就从修改变成了新增操作了。局部修改是只修改指定id匹配的文档中的部分字段。
2025-01-08 10:48:56
254
原创 Elasticsearch——索引库操作
Index就类似数据库表,Mapping映射就类似表的结构。我们要向es中存储数据,必须先创建Index和Mapping。
2025-01-08 10:47:15
803
原创 Elasticsearch——IK分词器
分词器的作用是什么?创建倒排索引时,对文档分词用户搜索时,对输入的内容分词IK分词器有几种模式?ik_smart:智能切分,粗粒度ik_max_word:最细切分,细粒度IK分词器如何拓展词条?如何停用词条?利用config目录的IkAnalyzer.cfg.xml文件添加拓展词典和停用词典在词典中添加拓展词条或者停用词条。
2025-01-07 11:27:59
1040
原创 Elasticsearch倒排索引
我们先来回顾一下正向索引。其中的id字段已经创建了索引,由于索引底层采用了B+树结构,因此我们根据id搜索的速度会非常快。但是其他字段例如title,只在叶子节点上存在。因此要根据title搜索的时候只能遍历树中的每一个叶子节点,判断title数据是否符合要求。那搜索的大概流程如图:综上,根据id精确匹配时,可以走索引,查询效率较高。而当搜索条件为模糊匹配时,由于索引无法生效,导致从索引查询退化为全表扫描,效率很差。因此,正向索引适合于根据索引字段的精确搜索,不适合基于部分词条的模糊匹配。
2025-01-07 11:17:44
394
原创 大厂——Elasticsearch部署
Elasticsearch的官方网站如下:Elasticsearch是由elastic公司开发的一套搜索引擎技术,它是elastic技术栈中的一部分。整套技术栈被称为ELK,经常用来做日志收集、系统监控和状态分析等等:整套技术栈的核心就是用来存储、搜索、计算的Elasticsearch,因此我们接下来学习的核心也是Elasticsearch。首先Elasticsearch不用多说,是提供核心的数据存储、搜索、分析功能的。
2025-01-06 17:52:41
490
原创 Spring Cloud 概述
Spring Cloud 提供了⼀些可以让开发⼈员快速构建分布式服务的⼯具, ⽐如配置管理, 服务发现, 熔断,智能路由等. 他们可以在任何分布式环境中很好的⼯作.简单来说, Spring Cloud 就是分布式微服务架构的⼀站式解决⽅案, 是微服务架构落地的多种技术的集合⽐如:Distributed/versioned configuration 分布式版本配置Service registration and discovery 服务注册和发现Routing 路由。
2025-01-03 17:22:18
943
原创 JAVA常用的工作流
Flowable:Flowable 是一个轻量级的工作流引擎,它是 Activiti 的一个分支,提供了更强大和灵活的工作流管理能力。Activiti:Activiti 是一个轻量级的工作流和业务流程管理平台,它是一个开源的 BPM 框架,基于 Java 编写。jBPM:jBPM 是一个基于 Java 的开源工作流引擎,它提供了一个可视化的工作流设计器,可以方便地创建和管理工作流程。Camunda:Camunda 是一个流程引擎和工作流管理系统,它基于 BPMN 2.0 标准,提供了强大的工作流管理功能。
2025-01-02 18:12:39
491
原创 Spring一共注入方式(最全)
就 IOC 本身而言,并不是什么新技术,IoC(Inversion of Control控制反转) 是一种设计思想,而不是一个具体的技术实现。是一种是面向对象编程中的一种设计原则,用来减低计算机代码之间的耦合度。IoC 的思想就是借助于“第三方”实现具有依赖关系的对象之间的解耦。换句话说就是,将原本在程序中手动创建对象的控制权,交由 Spring 框架来管理。不过, IoC 并非 Spring 特有,在其他语言中也有应用。
2025-01-02 18:09:43
1265
原创 Flowable工作流入门
在开发自己的系统时, 整合工作流, 我们往往需要程序里提供一个菜单, 实现流程的可视化配置, 拖拽, 保存, 版本管理等工作, 利用官方的设计器, 我们可以快速构造一个独立的Spring Boot工程, 提供设计器界面, 通过Url集成的方式加入我们的项目当中。在Flowable中, 如果流程是多路并行的, 可以在任务上设置为并行任务, 以替代传统工作流的多个相同任务的并行行为。内置自定义表单功能, 可以实现一些简单的表单定义, 但真正业务开展时, 很难对复杂多变的情况进行支撑, 不建议使用。
2024-12-31 15:40:30
1117
原创 KVM虚拟机命令管理
在嵌套标签内部,找到待还原快照vm1-snapshot1对应的、,将它们及它们的所有外层嵌套都删除,只保留该同级的及其内部嵌套。base-image
2024-12-31 15:29:03
990
原创 mysql8 error 1819 (hy000): your password does not satisfy the current policy
根据你的密码策略设置,你可以生成一个符合要求的密码。例如,如果策略要求密码至少包含8个字符,且包含至少一个数字、一个大写字母、一个小写字母和一个特殊字符,你可以选择一个如。注意:将密码长度设置为0可能会带来安全风险,因为这意味着用户可以设置任意长度的简单密码。)来实施,这些策略定义了密码的复杂度要求,如密码长度、是否包含数字、大写字母、小写字母、特殊字符等。一旦你知道了密码策略的具体要求,就可以分析为什么你的密码不符合要求。执行以上命令,可以得到关于密码策略的详细信息,包括密码策略的类型、长度要求等。
2024-12-30 18:21:00
1291
原创 Docker 容器全部停止的几种方法实现例子解析
你可以使用-t或--time选项来设置容器在发送SIGTERM信号后的超时时间。如果容器在30秒内没有停止,Docker将发送SIGKILL信号强制停止容器。你可以使用-s或--signal选项来发送自定义信号给容器。这将允许容器接收到自定义信号并相应地进行处理。请根据你的具体需求选择合适的命令来停止Docker容器。
2024-12-28 09:56:21
1474
原创 深度学习基础
深度学习(Deep Learning)是机器学习(Machine Learning)的一个研究方向,而机器学习属于人工智能(AI, Artificial Intelligence)的范畴,人工智能是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。三者的关系可以参考https://www.geeksforgeeks.org/getting-started-machine-learning/提供的一张图如下。
2024-12-26 16:08:26
863
原创 深度学习-机器学习
定义:深度学习是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。它是机器学习的一个分支,通过学习样本数据的内在规律和表示层次,使机器能够像人一样具有分析学习能力,识别文字、图像和声音等数据。核心:深度学习的核心在于构建多层非线性处理单元(即神经元)的网络结构,这些网络可以从原始数据中自动提取特征并进行学习。
2024-12-26 15:45:01
420
原创 Java接收并解析HL7协议数据
使用的是:7Edit 可以模拟发送hl7协议数据用于Socket调试使用,具体用法可以参考其他博主的文章,本来想截几个工具的图片,但是试用期已过不让打开了......调试过程中可以用上述工具观察解析结果,但是要大规模,大密度模拟报文就需要手动写几个测试类调用了,下述是笔者测试中用到的工具类,分享给大家。访问路径为:aikes/hl7/20,具体访问频次可自行调整。
2024-12-26 14:57:21
1563
原创 安装docker
Docker可以运行在MAC、Windows、CentOS、UBUNTU等操作系统上,本课程基于CentOS 7 安装Docker。考虑到从 docker 官方的仓库下载 docker-ce 有时会比较慢,可以使用下述命令将下载网址改为华为的镜像服务器: sudo sed -i 's+download.docker.com+repo.huaweicloud.com/docker-ce+' /etc/yum.repos.d/docker-ce.repo。
2024-12-26 14:41:48
157
原创 centos7安装RabbitMQ 延迟插件rabbitmq_delayed_message_exchange
【代码】centos7安装RabbitMQ 延迟插件rabbitmq_delayed_message_exchange。
2024-12-26 14:28:39
364
原创 centos7安装mysql8(全)
2、如果导入密钥后仍然失败,可能是因为密钥已经更新。你可以从 MySQL 的官方仓库或密钥服务器获取最新的密钥。1、检查你的系统是否有正确的 GPG 密钥。/etc/yum.repos.d/mysql-community.repo 文件来确认或更改仓库配置。第一步:忘记密码不要慌,先找到my.cnf配置文件,yum安装一般都在/etc下,源码安装在安目录下。第五步: 将第一步的skip-grant-tables删除,重启mysql就ok了。3、确认你正在使用的仓库 URL 是正确的,并且仓库是启用的。
2024-12-11 18:19:46
458
原创 Spring MVC found on classpath, which is incompatible with Spring Cloud Gateway at this time
Spring Cloud Gateway是基于Spring WebFlux构建的,Spring WebFlux是一个非阻塞的反应式web框架,而Spring MVC是一个阻塞的框架,它包含在spring-boot-starter-web依赖中。4、如果你在同一个应用中需要Spring MVC和Spring Cloud Gateway,可以在application.yml或application.properties文件中将web应用类型设置为REACTIVE。1、把web依赖放到模块里面。
2024-11-07 15:01:51
635
1
原创 一线大厂——KMP算法
KMP算法是一种改进的字符串匹配算法,由D.E.Knuth,J.H.Morris和V.R.Pratt提出的,因此人们称它为克努特—莫里斯—普拉特操作(简称KMP算法)。KMP算法的核心是利用匹配失败后的信息,尽量减少模式串与主串的匹配次数以达到快速匹配的目的。具体实现就是通过一个next()函数实现,函数本身包含了模式串的局部匹配信息。KMP算法的时间复杂度O(m+n)下面开始介绍KMP算法,在此先规定好文章中所用变量代表意义:字符串A为被查找对象,字符串B为查找对象,即在A中寻找B是否存在。
2024-09-27 15:17:56
1001
1
原创 一线大厂——KMP算法实例图解分析+详细代码注解
1️⃣ 字符串的前缀是指不包含最后一个字符的所有以第一个字符(索引为0)开头的连续子串比如字符串 “ABABA” 的前缀有:A,AB,ABA,ABAB2️⃣ 字符串的后缀是指不包含第一个字符的所有以最后一个字符结尾的连续子串比如字符串 “ABABA” 的后缀有:BABA,ABA,BA,A3️⃣ 公共前后缀:一个字符串的 所有前缀连续子串 和 所有后缀连续子串 中相等的子串比如字符串 “ABABA”前缀有:A,AB,ABA,ABAB后缀有:BABA,ABA,BA,A。
2024-09-27 15:13:09
813
原创 TCP与UDP对于端口号的使用规定
3、大多数TCP/IP实现给临时端口分配1024~5000之间的端口号。大于5000的端口号是为其它服务器预留的(internet上并不常用的服务)UDP的端口分配规则与TCP相同。UDP的端口分配规则与TCP相同。2、客户端通常对他所选用的端口号并不关心,只需保证该端口号在本机上是唯一的就可以了。客户端口号因存在时间很短暂又称作监时端口号。1、端口号小于256的定义为常用端口,服务器一般都是通过常用端口来识别的。
2024-09-19 18:42:19
515
原创 SpringBoot使用netty
客户端这里以NIO来编写,就不写Netty了,在实际工作中,其实也都是Netty服务端,客户端可能是 WebSocket 或者 Socket,我们这里就以 Socket 为例,由于 NIO 是Java提供的,所以我们不需要引入什么依赖。由于使用SpringBoot,因此我们可以监听项目启动成功后触发启动Netty服务器,这时候只要SpringBoot启动就行了。客户端1 成功收到了 客户端2的消息,同理我们通过客户端1 发送。服务端也触发了日志打印,监听到客户端加入。现在我们通过客户端2,发一条消息看看。
2024-09-06 09:57:07
1676
原创 云原生虚拟化+Docker+k8s+Istio
应用与运行环境分开交付,无法保证环境的一致性资源、环境的隔离问题之前有大量探索,例如虚拟机层面的隔离,应用层面的隔离,探索追求更好的隔离性、高高的资源利用率及启动时间一个用于开发,交付和运行应用程序的开放平台。Docker能够将应用程序与基础架构分开,从而快速交付软件。大大减少编写代码和在生产环境中运行代码之间的延迟。可分为内核层、应用层、治理层、接口层,其中生态层不属于K8S范围K8S架构分层各层的详细定义接口层(工具、SDK库、UI等)K8S官方的项目会提供库、工具、UI等外围工具。
2024-08-29 12:32:46
1171
1
大厂面试真题-RabbitMQ的消息如何实现路由精讲
2024-01-15
一线大厂面试真题-谈谈你对MQ的理解精讲
2024-01-14
Sentinel流控效果预热精讲
2024-01-05
Sentinel流控效果排队等待精讲
2024-01-05
Sentinel流控模式链路精讲
2024-01-04
Sentinel流控模式关联精讲
2024-01-04
sentinel熔断慢调用比例精讲
2024-01-03
sentinel熔断异常比例精讲
2024-01-03
Nacos部署精讲+服务发现、配置管理和服务管理平台
2024-01-01
单例模式,属于创建类型的一种常用的软件设计模式 通过单例模式的方法创建的类在当前进程中只有一个实例(根据需要,也有可能一个线程中
2024-01-01
JAVA软件行业将要何去何从?
2024-01-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人