- 博客(142)
- 收藏
- 关注
原创 【MySQL】详解数据库约束、聚合查询和联合查询
需要满足:使用 GROUP BY 进行分组查询时,SELECT 指定的字段必须是“分组依据字段”,其他字段若想出现在SELECT 中则必须包含在聚合函数中。在实际应用中,为了合并多个select的执行结果,可以使用集合操作符 union,union all。使用UNION和UNION ALL时,前后查询的结果集中,字段需要一致。GROUP BY 子句进行分组以后,需要对分组结果再进行条件过滤时,不能使用 WHERE 语句,而需要用HAVING。实际开发中往往数据来自不同的表,所以需要多表联合查询。
2025-03-22 16:22:16
821
原创 [RabbitMQ] 常见面试题汇总 工作流程 消息可靠性 消息顺序性 幂等性 高级特性 延迟队列 仲裁队列 工作模式 消息积压 推拉模式
延迟队列(DelayedQueue),即消息被发送以后,并不想让消费者立刻拿到消息,而是等待特定时间后, 消费者才能拿到这个消息进行消费.
2025-03-22 03:35:07
817
原创 SpringBoot详解
因此,把应用的主类放在根包中,SpringBoot就会自动扫描并加载所有需要的组件和配置,让你可以专注于编写业务代码,而不用担心复杂的配置细节。Spring提供了大量的子模块,如Spring Core、Spring Web、Spring Data等,但它们的配置复杂度较高,且需要开发者手动配置各类文件和依赖。启用了SpringBoot的自动配置功能,SpringBoot会根据项目中的依赖,自动配置很多常用的 Spring组件,这样就不需要手动配置它们。目录下,提供了默认的配置。
2025-03-22 00:21:38
840
原创 spring.factories和org.springframework.boot.autoconfigure.AutoConfiguration.imports
spring.factories和org.springframework.boot.autoconfigure.AutoConfiguration.imports都是Spring Boot自动配置机制中的重要组成部分。
2025-03-10 23:06:09
337
原创 Python爬虫完整代码拿走不谢
对于新手做Python爬虫来说是有点难处的,前期练习的时候可以直接套用模板,这样省时省力还很方便。若要更改爬取网站,则需要更改URL以及相应的html格式(代码中的“item”)。使用Python爬取某网站的相关数据,并保存到同目录下Excel。
2025-03-10 12:20:09
657
原创 Nginx中$http_host、$host、$proxy_host的区别
变量是否显示端口值是否存在host浏览器请求的ip,不显示端口否"Host:value"显示值为a:b的时候,只显示ahttp_host浏览器请求的ip和端口号是“Host:value”,value存在就显示proxy_host被代理服务的ip和端口号默认80不显示其他端口显示"Host:value"显示配置反向代理时,接口请求报404问题应用描述:前端应用域名为A(ww.a.com), 后端服务域名为B(www.b.com);
2025-03-07 22:30:58
380
原创 MySQL为什么莫名其妙的断开连接以及解决方案!
最近遇到在将本地的项目部署到服务器上之后遇到的一个奇怪问题在部署完成后,网站当时可以正常工作,但是第二天访问网站的时候却会遇到一个500 Server Error。从日志中可以看出是MySQL数据库出现了异常翻译如下:最后一个数据包在 83827560 ms 之前被成功接收,最后一个数据包在83827560 ms 之前被成功发送。比服务的配置参数的值要长。
2025-03-05 18:45:51
528
原创 Java进阶面试题(网上资料整理)
考虑一个类 A 有 foo() 方法, 然后 B 和 C 派生自 A, 并且有自己的 foo() 实现,现在 D 类使用多个继承派生自 B 和C,如果我们只引用 foo(), 编译器将无法决定它应该调用哪个 foo()。由于接口只有方法声明而且没有提供任何实现,因此只有一个特定方法的实现,因此不会有任何歧义。假设你需要多重继承的情况并不多,简单起见,明智的决定是省略它。此外,Java 可以通过。多重继承确实使设计复杂化并在转换、构造函数链接等过程中产生问题。钻石形继承问题产生的歧义。
2025-03-05 15:33:27
501
原创 IoT DC3 是一个基于 Spring Cloud 的开源的、分布式的物联网(IoT)平台本地部署步骤
## 启动 Auth、Manager、Data、Gateway 服务 [进入原网页#](https://doc.dc3.site/docs/code/3-idea-start.html#%E5%90%AF%E5%8A%A8-auth%E3%80%81manager%E3%80%81data%E3%80%81gateway-%E6%9C%8D%E5%8A%A1)[输入图片说明](/imgs/2023-08-23/RwCzXsbq9cGTMIjv.png)
2025-03-05 00:53:09
654
原创 5分钟快速搭建一个 SpringBoot3 + MyBatis-Plus 工程项目
刷新后,在工程名 + Application的文件中可以启动这个。创建SpringBoot工程,这里有两种方式可选,一种是使用。为了测试是否配置成功,我们创建数据库mybatis。来检查是否连接成功,如下图所示,连接成功。在下方的终端输出可以看出,项目启动在。创建该项目的spring配置文件,在。在下方的终端输出可以看出,项目启动在。是用于简化类开发,修改后,记得更新。,没有修改配置需求时可以不写东西。最后,和自动创建一样,创建一个。等待项目创建完成,修改。自动创建,一种是通过。文件,配置数据库连接。
2025-03-04 23:34:49
596
原创 解决SpringBoot+MyBatisPlus 报错Property ‘sqlSessionFactory‘ or ‘sqlSessionTemplate‘ are required
【代码】解决SpringBoot+MyBatisPlus 报错Property ‘sqlSessionFactory‘ or ‘sqlSessionTemplate‘ are required。
2025-03-03 10:57:01
231
原创 搭建Golang gRPC环境:protoc、protoc-gen-go 和 protoc-gen-go-grpc 工具安装教程
本文开发环境,均为 windows 环境,mac 环境其实也类似 ~① 编译proto文件,相关插件 简单介绍:protoc是编译器,用于将.proto文件编译成代码;是一个插件,用于生成Go语言的数据结构代码;是另一个插件,用于生成Go语言的gRPC服务代码。这三个工具共同支持在Go语言环境中使用protobuf和gRPC。在编译.proto文件时,go_out和这两个参数分别会调用以下文件:go_out:这个参数会调用插件。插件的主要作用是将.proto文件转换为Go语言的代码。
2025-03-02 21:46:22
945
原创 基于SpringBoot的旅游网站的设计与实现
JSP技术本身是一种脚本语言,但它的功能是十分强大的,因为它可以使用所有的JAVA类。当它与JavaBeans 类进行结合时,它可以使显示逻辑和内容分开,这就极大的方便了用户的需求。JavaBeans 可以对JSP技术的程序进行扩展,从而形成新的应用程序,而且JavaBeans的代码可以重复使用,所以就便于对程序进行维护。JavaBean 组件有内部的接口,可以帮助不同的人对系统进行访问。
2025-03-02 20:27:11
687
原创 使用DRS将MySQL或Oracle数据库迁移到GaussDB
参考图2,配置实例名称,选择计费模式、产品类型、数据库引擎版本、实例类型、事务一致性、分片数量、协调节点数量和可用区。参考图6,配置实例名称,选择计费模式、产品类型、数据库引擎版本、实例类型、事务一致性、分片数量、协调节点数量和可用区。配置实例名称,选择计费模式、产品类型、数据库引擎版本、实例类型、事务一致性、分片数量、协调节点数量和可用区。选择实例所属的VPC(创建VPC)和安全组(创建安全组),配置数据库端口。选择实例所属的VPC(创建VPC)和安全组(创建安全组),配置数据库端口。
2025-03-02 18:48:12
950
原创 【报错解决】MySQL报错:sql_mode=only_full_group_by
如果代码中含有group by聚合操作,那么select中的列,除了使用聚合函数之外的,如max()、min()等,都必须出现在group by中。通过对SQL的查询思路调整,代码逻辑调整等,部分场景是可以绕开对 GROUP BY 关键字筛选依赖的。Linux系统,思路是一样的,都是找配置文件修改配置。注意默认的列宽可能无法直接查看全部内容,容易造成误解,需要手动拉伸列宽查看。调整:将SELECT 查询的字段和 GROUP BY 分组依据的字段统一。但是如果当前数据库重启后,还是回归默认设置,即包含。
2025-03-01 14:58:27
833
原创 【Spring】Spring实现加法计算器和用户登录
约定“前后端交互接口”是进行 Web 开发中的关键环节。接口又叫API),我们一般讲到接口或者API,指的都是同一个东西是指应用程序对外提供的服务的描述,用于交换信息和执行任务(与JavaSE中学习的类和接口是两回事)。简单来说,就是允许客户端给服务器发送哪些HTTP请求,并且每种请求预期获取什么样的HTTP响应。现在“前后端分离”模式开发,前端和后端的代码通常由不同的团队负责开发,双方团队在开发之前,会提前约定好交互的方式客户端发起请求服务器提供对应的服务。
2025-03-01 00:28:38
580
原创 【MySQL】快速上手:mysql用户管理 教你快速创建管理新用户
*前言:**本节内容讲述两个板块的内容, 一个板块是数据库的视图, 另一个板块是mysql的用户管理,主要讲解了用户的增删, 以及查和修改密码。然后讲述了用户的赋予和收回权限。下面开始我们的学习吧!
2025-02-28 22:50:26
564
原创 windows10安装redis数据库,并设置开机自启动
windows安装redis是很简单,属于开箱即用的。下载安装包,将安装包解压后,启动服务端,启动客户端就可以操作了。
2025-02-28 13:48:51
198
原创 spring注入list集合
spring在帮我们管理bean的时候,会帮我们完成自动注入,其中有一个比较特殊的类型:list这篇笔记主要记录spring注入list集合的原理。
2025-02-28 12:08:50
310
原创 SpringBoot开发——初步了解SpringBoot
Spring Boot是一个构建在Spring框架顶部的项目。它提供了一种简便,快捷的方式来设置,配置和运行基于Web的简单应用程序。它是一个Spring模块,提供了 RAD(快速应用程序开发)功能。它用于创建独立的基于Spring的应用程序,因为它需要最少的Spring配置,因此可以运行。简而言之,Spring Boot是 Spring Framework 和 嵌入式服务器的组合。在Spring Boot不需要XML配置(部署描述符)。
2025-02-28 10:25:39
509
原创 Spring Security(一)初识Spring Security
Spring Security是spring采用AOP思想,基于servlet过滤器实现的安全框架。它提供了完善的认证机制和方法级的授权功能。我们在这个登录页面上输入用户名user,密码user,点击Sign in,就可以看到首页了!用于解析xml配置文件,用到Spring Security的xml配置文件的就要用到此包。Spring Security提供的动态标签库,jsp页面可以用。核心包,任何Spring Security功能都需要此包。web工程必备,包含过滤器和相关的Web安全基础结构代码。
2025-02-27 13:38:01
262
原创 Seata 入门与实战
Seata 是一款开源的分布式事务解决方式,致力于提供高性能和简单易用的分布式事务服务。Seata 为用户提供了 AT、TCC、SAGA 和 XA 事务模式,为用户打造一站式的分布式事务解决方案。**概念:**性能相比其他事务要差一点,但能保证最严格的数据一致性。XA 模式需要设置串行化隔离级别,相当于对数据添加了读写锁。另外连接资源需要在整个事务期间保持,这样可能会导致资源锁定问题,从而影响并发事务吞吐。**优点:**实现简单、无业务侵入**缺点:**性能差、必须实现 XA 协议、容易产生死锁。
2025-02-27 12:16:15
823
原创 PostgreSQL在Linux环境下的常用命令总结
这条查询语句会列出正在使用 mydb 数据库的会话的进程 ID(pid)、用户名(usename)、数据库名(datname)、应用程序名(application_name)、客户端地址(client_addr)、客户端主机名(client_hostname)以及客户端端口(client_port)等信息。在一些较新的 PostgreSQL 版本中,理论上可以尝试使用 ALTER DATABASE 语句来更改数据库名称,但这种方法可能会受到一些限制,比如数据库的使用状态、权限等因素可能会影响其成功与否。
2025-02-27 10:53:39
650
原创 Nginx实现接口复制
项目中,通常会遇到一个中转服务需要往多个不同的系统推送同一份数据,传统做法是需要在Java代码侧中调用多个API接口进行发送。其实Nginx作为一个请求代理转发中间件必然具备类似的功能,常见就有mirror指令进行流的镜像复制。
2025-02-26 03:22:02
974
原创 MySQL如何删除binlog日志文件
1、使用命令手动在操作系统中删除,但是这种删除并没有从数据库逻辑层面删除,数据库里还记录着这条日志,可能会有一些问题。2、使用SQL命令删除,该命令执行成功后,Linux系统中的binlog物理文件也会被删除。然后重启数据库服务,数据库就会自动删除7天前的binlog日志。登录到数据库中,查询binlog日志文件信息。MySQL如何删除binlog日志文件呢?2> 删除某个日期前的binlog日志文件。3> 删除某天前的binlog日志文件。1> 删除单条binlog日志文件。
2025-02-26 02:01:10
327
原创 Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错
是MySQL的一个SQL模式(SQL_MODE)之一,它要求在使用GROUP BY语句时,SELECT列表、HAVING条件或ORDER BY列表中的每个列,要么是聚合函数的一部分(如COUNT()SUM()AVG()等),要么必须在GROUP BY子句中明确指定。这一模式的设计初衷是增强查询的准确性和可预测性,避免因为列的不明确引用而导致的数据错误或不一致。
2025-02-26 00:41:20
732
原创 linux nginx 安装后,发现SSL模块未安装,如何处理?
nginx 安装后,发现SSL模块未安装,如果不需要配置SSL域名,就无关紧要。但是很多时候客户后续发来证书了,我们要配置证书,发现SSL模块未安装,证书配置上,重启nginx会提示‘nginx: the “ssl” parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf’错误。这时候我们又不想重新安装nginx,我们就可以按照下面步骤单独安装SSL模块。
2025-02-25 23:56:15
235
原创 Java进阶必备宝典”助你轻松掌握核心知识,从理论到实战一网打尽
作为一名Java方向的程序员,筑牢基础是非常关键的。如今,大厂面试对程序员基础知识的掌握要求愈发严格。尽管技术更新迅速,但只有基础扎实,我们才能更深入地理解每一个技术要点。对于Java程序员如何筑基,许多新手可能会感到迷茫。不过,好消息来了!阿里巴巴首推的“Java进阶必备宝典”为您提供了全面的学习资源。这本书的内容完整,从基础到高级再到实战,让您清晰认识Java系统的结构,一键搞定!这本“Java进阶必备宝典。
2025-02-25 18:43:20
505
原创 Flask项目部署到阿里云服务器(全网最清晰简单完整部署),linux命令和脚本文件 nginx安装到服务器等每一步清晰记录
激活后,命令行提示符前会显示虚拟环境的名字(my_venv),这表明当前正处于此虚拟环境中运行命令,此时安装的Python包将只在这个环境中生效,不会影响全局Python环境。在部署flask项目时候,因为flask是一个轻量级的Python Web框架,其本身并不包含一个成熟的Web服务器组件,而是依赖于内置的简易服务器(werkzeug)这段配置是告诉Nginx监听公网端口80,并将所有到此服务器的请求转发到本地端口8080(是你的python项目本地运行的端口)。优先级默认:默认(1);
2025-02-24 17:32:55
1040
原创 20241130 RocketMQ本机安装与SpringBoot整合
NameServer 是一个非常简单的 Topic 路由注册中心,其角色类似 Dubbo 中的zookeeper,支持 Broker 的动态注册与发现。**Consumer:**消息消费的角色,支持分布式集群方式部署。**Producer:**消息发布的角色,支持分布式集群方式部署。rocketmq.config.namesrvAddr= ,这个是指定 nameServer 地址和端口,我们暂时先搞成localhost:9876,等后面搞集群的话,要再修改;Broker的路由的信息。
2025-02-24 15:42:15
644
原创 通俗易懂:RustDesk Server的搭建及使用
最近有很多远程桌面连接的需求,使用花生壳、topdesk等现有的远程控制又有数量上的限制,因此利用公司现有的具有固定IP地址的服务器,搭建了一台 RustDesk Server来解决工作中的痛点。结论是丝毫不输哪些收费的软件,不论是剪切板、文件传输都相当丝滑,速度也非常快。和远程桌面类似。这个教程有点啰嗦,这是因为我在搭建过程中发现很多教程都是基于DOCKER的,我也没有docker环境,因此这里自己的一个记录。
2025-02-23 12:10:36
1149
原创 深入了解Text2SQL开源项目(Chat2DB、SQL Chat 、Wren AI 、Vanna)
在数据驱动决策的时代,将自然语言查询转化为结构化查询语言(SQL)的能力变得日益重要。无论是小型创业公司还是大型企业,都希望能够更轻松地从海量的数据中挖掘出有价值的见解。然而,对于那些不熟悉SQL或者数据库架构的用户来说,直接编写复杂的查询语句往往是一个巨大的挑战。正是为了解决这一问题,Text2SQL技术应运而生,它允许用户通过简单的自然语言描述来获取他们所需的数据库信息。近年来,随着人工智能和机器学习领域的迅速发展,Text2SQL技术也取得了显著的进步。
2025-02-23 05:43:01
979
原创 如何彻底卸载SQL Server
目录一、停止 SQL Server 服务二、卸载 SQL Server 各项软件三、删除 SQL 安装后的相关文件夹四、删除 SQL Server 相关注册表
2025-02-23 03:55:38
333
原创 华为HuaweiCloudStack(一)介绍与架构
HCS全称华为HuaweiCloudStack,也叫华为云Stack,是华为面向市场推出的大型私有云解决方案。什么叫大型呢,相对于HCS,华为有另外一个中小型私有云平台FusionCompute,FC平台只要内存大一些,在自己家电脑上也可以搭建。但HCS不一样,从部署方式上讲他至少需要有7个物理服务器的节点,门槛非常高,这个我文章后半段再讲。除此之外HCS还有一些特点,华为公有云采用也是HCS这套架构,相当于就将公有云的架构打包卖给客户;
2025-02-21 23:16:27
811
原创 Springboot中CommandLineRunner的用法以及执行顺序的控制
在 Spring Boot 应用程序中,所有实现了 `CommandLineRunner` 接口的 `@Component` 类的 `run` 方法并不是严格保证顺序串行执行的。在这个示例中,通过 `@Order` 注解设置了 `FirstRunner` 和 `SecondRunner` 的执行顺序,`FirstRunner` 的 `run` 方法会在 `SecondRunner` 的 `run` 方法之前执行。这使得开发人员能够方便地在应用程序启动后执行一些必要的操作。// 在应用程序启动后执行的逻辑。
2025-02-21 16:25:19
347
原创 Spring Boot常用注解深度解析:从入门到精通
今天,这篇文章带你将深入理解Spring Boot中30+常用注解,通过代码示例和关系图,帮助你彻底掌握Spring核心注解的使用场景和内在联系。
2025-02-21 14:53:54
807
原创 RabbitMQ 集群部署方案
启动 rabbitmq2 和 rabbitmq3 主机的 RabbitMQ 应用,并再次查看 RabbitMQ 的节点状态。,查看三台服务器的值是否一致,一致后再重启 rabbitmq2 和 rabbitmq3 的 RabbitMQ 服务。可以可以启用 RabbitMQ 可视化web管理插件,更直观的看到集群状态,也方便测试。改主机名,对照 hosts 配置的主机名解析,把对用服务器的主机名改为相应的解析。停止 rabbitmq2 和 rabbitmq3 主机的 RabbitMQ 应用。
2025-02-21 01:52:13
1010
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人