- 博客(92)
- 收藏
- 关注
原创 BigInteger和Long的区别
“有符号选Long,无符号用BigInteger;性能优先看场景,超大计算不犹豫”。合理选择类型,既能避免程序崩溃,又能提升运行效率。
2025-04-18 08:48:45
893
原创 窗口函数over()
PARTITION BY + ORDER BY → 分组内排序计算(如累计值)PARTITION BY + 窗口范围 → 分组内指定计算范围(如移动平均)
2025-04-18 08:44:44
621
原创 像搭积木一样玩转前端布局
刚学前端的小伙伴们,是不是经常被这些问题困扰?❓ 为什么我的div总是乱跑?❓ 导航栏的按钮死活对不齐?❓ 手机和电脑显示效果完全不一样?
2025-04-16 16:00:00
779
原创 数据库主从复制
简单来说,它像一台摄像机,忠实记录所有对数据库进行修改的 SQL 语句(如 INSERT/UPDATE/DELETE)或表结构变更(如 CREATE/ALTER)等操作。),而非底层数据页的物理修改细节(这是 redo log 的特性)。其核心思想是通过将主库(Master)的数据变更异步/同步复制到从库(Slave),使从库与主库保持数据一致。GTID(全局事务标识符)是 MySQL 主从复制中用于唯一标识事务的机制,它解决了传统复制依赖 binlog 文件名和位置的痛点。
2025-04-16 15:00:00
1665
原创 Mybatis中dao(mapper)层几种传参方式
某些情况下,#{}和${}可以互相替换,但是有些情况下必须使用${},比如order by的字段是sql参数。#{} 占位符,相当于?,sql预编译,可以防止sql注入。2、${}非预编译(直接拼接sql,不能防止sql注入)1、 #{}预编译 (可防止sql注入)${} 原样替换,相当于sql拼接。二、dao层的四种传参方式 ↓。
2025-04-16 08:55:53
252
原创 使用 SQL CTE(公共表表达式)优化数据查询的实践
在数据分析和数据库管理中,SQL 查询的效率和可读性是至关重要的。随着数据量的不断增加,复杂的查询变得越来越难以管理和理解。为了解决这个问题,SQL 提供了一种强大的工具——公共表表达式(CTE,Common Table Expressions)
2025-04-16 08:50:15
257
原创 单点登录(SSO)实战:基于Vue与Spring Boot的深度实现
在分布式系统架构中,单点登录(Single Sign-On)如同企业级应用的"万能钥匙",用户只需在统一认证中心完成一次身份验证,即可访问所有互信系统。其核心在于建立可信的令牌传递机制,我们选择JWT(JSON Web Token)作为载体,结合OAuth2简化模式实现轻量级SSO方案。
2025-04-16 08:38:09
364
原创 NMOS管与PMOS管的区别与总结
栅极(Gate, G):通过施加电压控制导电沟道的形成。漏极(Drain, D):电流输出端。源极(Source, S):电流输入端。
2025-03-21 08:33:29
1434
原创 Trae如何使用插件Mybatis Log & MybatisX转换SQL语句?
字节出品的Trae作为VSCode的套皮开发前端非常顺手,但是为了白嫖无限量的Claude 3.7,还是尝试使用Trae开发Java。今天就说一下如何将插件Mybatis Log & MybatisX接入 Trae 查看转换后的SQL语句。
2025-03-21 08:24:42
442
原创 Mybatis和Mybatis-plus实现逻辑删除
什么是物理删除,什么是逻辑删除?物理删除就是直接干掉数据库的数据,无法再恢复回来。但在企业级项目中,物理删除已经非常少见,而是使用逻辑删除。逻辑删除本质上是个update操作,通过一个标记字段来识别某个数据是否被隐藏起来,但是对于用户来说看不到了自然以为就是删除了。
2025-03-20 17:39:58
521
原创 达梦数据库
DM8是达梦公司在总结DM系列产品研发与应用经验的基础上,坚持开放创新、简洁实用的理念,推出的新一代自研数据库。DM8吸收借鉴当前先进新技术思想与主流数据库产品的优点,融合了分布式、弹性计算与云计算的优势,对灵活性、易用性、可靠性、高安全性等方面进行了大规模改进,多样化架构充分满足不同场景需求,支持超大规模并发事务处理和事务-分析混合型业务处理,动态分配计算资源,实现更精细化的资源利用、更低成本的投入。一个数据库,满足用户多种需求,让用户能更加专注于业务发展。
2025-03-20 17:25:05
1089
原创 Vue项目中如何使用SVG图标?
如果项目中有大量 SVG 图标,推荐使用 SVG Symbol Sprite 的方式,这样可以减少 HTTP 请求次数并优化性能。如果需要动态加载 SVG 图标,可以结合 Vue 的动态组件功能。Iconify 是一个支持多种图标的库,可以直接在项目中使用。可以借助一些成熟的第三方库来简化 SVG 图标的管理,例如。减少 HTTP 请求,性能优化明显,适合大量图标。将所有 SVG 图标合并到一个文件中,并使用。提供丰富的图标集合,无需手动管理图标文件。文件,配置对 SVG 文件的处理规则。
2025-03-14 08:59:21
479
原创 MySQL字符串处理神器:SUBSTRING_INDEX函数深度解析
SUBSTRING_INDEX 是MySQL中用于按分隔符截取字符串的核心函数,特别适合处理包含固定分隔符的文本数据(如日志、路径、标签等)。日志示例:[2023-08-20] ERROR=5003 Connection timeout → 输出:5003。大小写敏感:SUBSTRING_INDEX('A-B-C', 'b', 1) → 返回完整字符串。多字符分隔符:支持多字符分隔符,如SUBSTRING_INDEX(str, '||', 2)输入:"王慧(网络组)" → 输出:"王慧"
2025-03-13 17:00:56
716
原创 深入理解与应用 JavaScript 中的回调函数
回调函数是 JavaScript 编程中不可或缺的一部分。无论是处理异步操作、事件绑定还是高阶函数,回调函数都扮演着重要角色。然而,随着语言的发展,Promise 和 async/await 已经成为更现代化的替代方案,但回调函数依然是理解这些高级特性的基础。
2025-03-13 16:57:54
711
原创 史上最全RS485通信软硬总结
当发送数据“0”时,由于DI接口相当于接地,此时数据“0”就会传输到AB扣,A-B<0,则传输“0”,完成低电平传输,当发送“1”时,此时三极管导通,按理说RO会使能,此时由于还处于发送数据中,这种状态下MAX485处于高阻太,此时的状态通过A上来,B下拉电阻决定,此时A-B>0传输“1”,完成高电平的传输。一般情况下,发送驱动器A、B之间的正电平在+2~+6V(发送逻辑1时总线上A的电压大于B的电压),负电平在-2~-6V(发送逻辑0时总线上的电压小于B的电压)。485RE为高电平,485处于发送状态。
2025-03-07 08:15:00
1283
原创 嵌入式开发最新技术分享与技能推荐与总结
近年来,嵌入式系统在物联网(IoT)、人工智能(AI)、边缘计算等领域的推动下迎来技术革新。以下梳理当前嵌入式开发的核心技术趋势与应用场景,并总结未来发展方向,并为大学生推荐需要掌握的技能和理论知识,希望能够在未来的职业发展中占据优势。
2025-02-20 16:21:36
625
原创 MySQL 索引失效案例:为什么你的 GROUP BY 没有走索引?
通过合理的设计索引和使用方法,90%的 GROUP BY 性能问题都能得到有效解决。
2025-02-14 15:54:37
802
原创 如何减少在创建库表结构时,频繁去添加字段的问题?
如果真的需要添加一些仅用于展示用的字段,而没有深入业务逻辑的字段,则可以在拓展字段中添加,但如果需要添加与业务逻辑强绑定的字段,还是需要添加,而不是写入拓展字段中。但是现在随着关系数据库理论的成熟和范式理论的出现,技术的逐渐成熟,存储成本逐渐降低,而性能优化成为更重要的考虑。由第三范式中引申出来的问题,需要对设计出的表字段进行适当的冗余,以减少多表查询,用空间换时间。简而言之,就是提前对业务进行了解和询问,提前与售前等人员进行沟通,或者在进行开发时,即使进行反馈和确认,减少后期因为返工带来的重复性工作。
2025-02-11 10:49:53
739
原创 ClickHouse SQL 查询中别名导致报错的问题分析与解决方案
ClickHouse作为一款高性能的列式存储数据库,在SQL查询方面有着独特的要求。对于别名的使用,开发人员需要格外谨慎,遵循一致性原则,避免列名重复等问题,以确保查询能够顺利执行并返回预期的结果。希望本文能为广大ClickHouse用户解决因别名使用不当而导致的报错问题提供有益参考。
2025-01-24 08:48:33
486
原创 前端发送request请求时,参数params和data的区别?
在前端开发过程中,当我们通过JavaScript或其框架(如Axios)向服务器发送HTTP请求时,经常会遇到需要传递参数的情况。根据不同的需求,这些参数可以通过params或data的方式进行传递。了解这两者的区别对于正确构建请求、确保数据准确传输至关重要。params通常用于GET请求中,它代表的是URL查询字符串中的键值对。当你使用params时,这些参数会直接附加到请求的URL后面,以“?”开头,多个参数之间用“&”分隔。
2025-01-20 16:31:31
2078
1
原创 构建本地服务PyPI代理和缓存工具
使用缓存机制可以显著减少对外部源的请求量,从而提高下载速度,并降低被源站封禁的风险。下面详细解释如何在本地服务器上设置和使用pip缓存机制。缓存机制的基本原理缓存机制的原理是在本地服务器上保存已经下载过的Python包,当其他服务器请求同样的包时,本地服务器可以直接提供,而无需再次从外部源下载。
2025-01-10 09:12:02
806
原创 MyBatis-Plus 分页插件配置的两种方式
如果你正在开发或维护一个基于 MyBatis-Plus 3.4.0 之前的项目,并且你的需求仅仅是分页功能,那么就足够了。对于 MyBatis-Plus 3.4.0 及之后的版本,官方推荐使用,因为它提供了更高的灵活性和更多的内置功能,可以根据实际需要轻松扩展应用的功能。
2025-01-10 08:58:19
1866
原创 九、大模型本地部署文档(FastGPT+M3E+Ollama本地部署知识问答大模型系统)
本文档概述了利用Docker部署知识问答大模型系统的流程。演示案例中,通过将名为“闭环思维考试题.txt”的文件提供给M3E模型,该模型执行文本分割等一系列预处理步骤,并基于此进行训练。随后,问题与答案的向量被存储到知识库中。在Fastgpt平台中创建的新对话引入了这个闭环思维知识库,并使用Qwen 3.2版本作为对话模型来进行知识问答。对于提问“闭环思维的核心是什么?”的回答是“凡事有交代”,这一回答引用自闭环思维知识库。总结而言,当前工作主要集中在对Fastgpt本地部署和使用的初步探索上。
2025-01-02 18:32:29
1363
原创 Spring Boot--@PathVariable、@RequestParam、@RequestBody
RESTful是一种基于HTTP协议的软件架构风格,它用于设计网络应用程序接口(API)。REST代表“表述性状态转移”(Representational State Transfer),其核心思想是通过一组标准的操作和资源来实现客户端与服务器之间的交互。RESTful API 设计强调简洁、直观和易于理解,遵循无状态通信原则,使得开发者能够快速构建和维护分布式系统。RESTful 的基本原则无状态性(Stateless)
2025-01-02 18:29:01
703
原创 IDEA中如何使用Maven构建多模块项目?模块间如何相互调用?
在 IntelliJ IDEA 中使用 Maven 构建多模块项目(Multi-Module Project)是一个常见的开发场景,尤其适用于大型项目或需要将代码拆分为多个独立模块的项目。通过合理组织模块结构,可以提高项目的可维护性和扩展性。下文将详细说明如何IDEA 中使用 Maven 构建多模块项目以及模块间是如何相互调用的。通过以上步骤,你可以在 IntelliJ IDEA 中使用 Maven 构建一个多模块项目,并确保模块之间能够正确地相互调用。项目的 pom.xml:定义项目的整体结构和模块列表。
2025-01-02 18:24:50
1638
原创 VPN?隧道?跳板机?代理服务器?网络通信中的术语都是什么含义?
你是否在工作或生活中总是听到这些网络术语,VPN、隧道、代理服务器等等,不了解相关概念的朋友可能对此一头雾水,其实这些都是网络通信中涉及到的知识点。我们身处在互联网中,大部分信息的通知、交互、转发都依赖网络完成,那么信息如何安全、准确进行传递呢?这就和上述提到的术语有关了。防火墙(Firewall)是一种网络安全系统,它监控并控制基于预定义的安全规则进出网络的流量。防火墙可以是硬件设备、软件应用程序或两者的组合。
2024-12-26 16:46:51
950
原创 返回NaN(Not a Number)的原因及解决办法
在这个修改后的公式中,nullif(l.sign_in_dur, 0) 会将 sign_in_dur 为零的情况转换为 NULL,从而避免了除以零的操作。对于 job_number 为 1 的记录,nullif(sign_in_dur, 0) 将 sign_in_dur 转换为 NULL,ifnull(l.busy_dur / NULL, 0) 将结果转换为 0,最终结果为 "0.00%"。这个公式计算的是 busy_dur 除以 sign_in_dur 的百分比。通过这种方式,可以避免除以零的情况。
2024-12-26 16:24:33
324
原创 八、大模型本地部署文档(docker部署GPU环境)
其他docker服务想要使用GPU环境必须保证服务部署在与GPU环境所处的网络环境一致。显示CUDA版本为cu118,docker的GPU环境配置完成。查看镜像后,使用gpu模式启动镜像。物理机安装nvidia驱动。获取cuda的版本以及系统。
2024-12-26 16:23:32
469
原创 「MySQL」日期时间格式化函数 DATE_FORMAT() 的使用详解
是MySQL中用于格式化输出日期时间的函数,我们可以通过使用该函数满足大多数格式化日期时间的应用场景,本文的示例展示了如何获取当前日期和时间并将其格式化为一个常见的格式,您可以根据需要调整格式字符串来满足您的具体需求。但需要注意的是,不同的数据库系统可能支持不同的格式字符串,所以在使用时需要参考相应数据库的文档来确定正确的格式字符串。
2024-12-19 19:05:27
12008
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人