多加点辣也没关系
码龄5年
关注
提问 私信
  • 博客:1,629,137
    1,629,137
    总访问量
  • 141
    原创
  • 4,979
    排名
  • 1,923
    粉丝
  • 学习成就

个人简介:一个普通的程序猿

IP属地以运营商信息为准,境内显示到省(区、市),境外显示到国家(地区)
IP 属地:广东省
  • 加入CSDN时间: 2020-04-05
博客简介:

xhmico的博客

查看详细资料
  • 原力等级
    成就
    当前等级
    8
    当前总分
    6,371
    当月
    149
个人成就
  • 获得4,194次点赞
  • 内容获得476次评论
  • 获得15,676次收藏
  • 代码片获得84,700次分享
创作历程
  • 51篇
    2024年
  • 57篇
    2023年
  • 33篇
    2022年
成就勋章
TA的专栏
  • 踩坑系列
    16篇
  • 入门教程
    28篇
  • 日常积累
    21篇
  • 高级教程
    16篇
  • 安装教程
    22篇
  • 系统集成
    24篇
  • 源码解读
    8篇
  • 前端学习
    5篇
  • 运维相关
    4篇
  • 理论学习
    11篇
  • 算法学习
    6篇
  • 环境配置
    2篇
  • 软件测试
    2篇
  • 设计模式
    2篇
兴趣领域 设置
  • 大数据
    mysqlredis
  • 后端
    架构
  • 搜索
    elasticsearch
  • 服务器
    linux
创作活动更多

HarmonyOS开发者社区有奖征文来啦!

用文字记录下您与HarmonyOS的故事。参与活动,还有机会赢奖,快来加入我们吧!

0人参与 去创作
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

easyExcel - 导出合并单元格

之前有介绍过如何使用 easyExcel,以及写了两个入门的 demo ,这两个 demo 能应付在开发中大多数的导入和导出需求,不过有时候面对一些复杂的表格,就会有点不够用,该篇就是关于如何实现导出合并单元格将相同订单号的单元格进行合并将相同订单号的单元格进行合并,且同一订单号的总数和总金额进行合并将相同订单号的单元格进行合并,且同一订单号的总数和总金额进行合并,订单内相同商品分类进行合并,且分类总数和分类总金额根据订单号和商品分类进行合并将表中数据相同部分进行左右合并,上下合并。
原创
发布博客 2024.11.18 ·
707 阅读 ·
6 点赞 ·
0 评论 ·
13 收藏

RocketMQ 自动注入消费者

之前接到一个需求,我们项目的技术负责人希望通过配置的形式,在项目启动的时候自动根据配置生成对应的消费者觉得还有点意思,随即记录一下~比如我这里有一个消费者@Slf4j@Service@OverrideSystem.err.println("我收到啦~~");在项目启动的时候会根据注解上的配置生成一个消费者假如我还需要一个消费者,其的配置为要设置为8通常情况下我们会再复制一个命名为@Slf4j@Service@OverrideSystem.err.println("我收到啦~~");
原创
发布博客 2024.11.07 ·
460 阅读 ·
5 点赞 ·
0 评论 ·
4 收藏

MySQL 高级 - 第十五章 | MySQL 事务日志

上篇: 第十四章、事务基础知识本文内容主要源于:bilibili-尚硅谷-MySQL高级篇事务有 种特性:原子性、 一致性、 隔离性和 持久性>那么事务的四种特性到底是基于什么机制实现呢?有的 或许会认为 是 的逆过程,其实不然。 和 都可以视为是一种恢复操作。但是::是存储引擎层()生成的日志,记录的是 上的页修改操作,比如页号 、偏移量 写入了 数据。主要为了保证数据的可靠性:是存储引擎层()生成的日志,记录的是逻辑操作日志,比如对某一行数据进行了 语句操作,那么 就记录一条与之相反
原创
发布博客 2024.09.29 ·
1074 阅读 ·
19 点赞 ·
0 评论 ·
20 收藏

IDEA 导入 RocketMQ 源码

最近项目中有个功能需要在本地调试下RocketMQ,所以需要在本地导入RocketMQ的源码并启动,故做此记录,便于回顾问题和与各位同学一起探讨。
原创
发布博客 2024.08.18 ·
1126 阅读 ·
17 点赞 ·
0 评论 ·
10 收藏

MySQL 高级 - 第十四章 | 事务基础知识

事务是数据库区别于文件系统的重要特性之一,当有了事务就会让数据库始终保持一致性,同时还能通过事务的机制恢复到某个时间点,这样可以保证已提交到数据库的修改不会因为系统崩溃而丢失。
原创
发布博客 2024.08.04 ·
714 阅读 ·
26 点赞 ·
0 评论 ·
14 收藏

MySQL 高级 - 第十三章 | 数据库其它调优策略

在进行多表连接的时候,搜索空间可能会达到很高的数据量级,巨大的搜索空间显然会占用更多的资源,因此需要通过调整连接顺序,将搜索空间调整在一个可接受的范围内。如果读和写的业务量都很大,并且它们都在同一个数据库服务器中进行操作,那么数据库的性能就会出现瓶颈,这时为了提升系统的性能,优化用户体验,可以采用读写分离的方式降低主数据库的负载,比如用主数据库(master)完成写操作,用从数据库(slave)完成读操作。:表示索引缓冲区的大小。表的规范化程度越高,表与表之间的关系就越多,需要连接查询的情况也就越多。
原创
发布博客 2024.07.22 ·
851 阅读 ·
20 点赞 ·
0 评论 ·
19 收藏

Java 面试 | Redis

缓存雪崩现象假如说在高峰期时,一秒有 5000 个请求去访问系统 A,正常清空下这个 5000 个请求有 4000 个请求是走缓存的,但是此时 redis 宕机了,导致这 5000/s 个请求直接落在数据库上,数据库扛不住这么多请求,导致数据库挂掉了,整个系统直接崩溃缓存雪崩的解决方案事前:redis 高可用,主从+哨兵,redis 集群避免全盘崩溃事中:本地 ehchache 缓存 + hystrix 限流 & 降级,避免 MySQL 被打死事后:redis 持久化,快速 恢复缓存数据。
原创
发布博客 2024.07.20 ·
858 阅读 ·
16 点赞 ·
0 评论 ·
19 收藏

后端跨域问题的处理

在做前后端分离的项目时,很有可能会遇到这样一种情况:就是在游览器中请求后端的接口,出现了CORS error错误大概的意思就是:跨源资源共享(CORS)策略阻止了来自端口5173的前端应用对运行在端口8860的后端服务的请求。
原创
发布博客 2024.06.14 ·
805 阅读 ·
5 点赞 ·
0 评论 ·
8 收藏

Json-server 的使用教程

可以让前端人员不用去编写后端的代码,就能在本地搭建一个json服务,可用于测试一些业务逻辑,便于调试调用。在前后端分离的开发模式下前端使用模拟数据接口, 这时候 后端接口还没有开发出来, 前端又需要数据进行开发,这种情况下就需要前端先行模拟数据, 等后端接口写好进行targetUrl进行替换。github 地址npm 地址是一个零代码快速搭建本地使用JSON文件作为数据源,通过提供一组简单的路由和端点来模拟后端服务器的行为它允许前端开发人员在不依赖后端API的情况下进行开发,通过本地搭建一个JSON。
原创
发布博客 2024.06.12 ·
3058 阅读 ·
13 点赞 ·
0 评论 ·
22 收藏

MySQL 高级 - 第十二章 | 数据库的设计规范

在关系型数据库中,关于数据表设计的基本原则、规则就称为范式。可以理解为,一张数据表的设计结构需要满足的某种设计标准的级别。要想设计一个结构合理的关系型数据库,必须满足一定的范式。范式的英文名称是,简称NF。它是英国人E.F.Codd在上个世纪70年代提出关系数据库模型后总结出来的。范式是关系数据库理论的基础,也是我们在设计数据库结构过程中所要遵循的规则和指导方法。有的时候不能简单按照规范要求设计数据表,因为有的数据看似穴余,其实对业务来说十分重要。这个时候,我们就要遵循业务优先。
原创
发布博客 2024.06.11 ·
1684 阅读 ·
21 点赞 ·
2 评论 ·
27 收藏

MySQL 高级 - 第十一章 | 索引优化与查询优化

上篇:第十章、性能分析工具的使用本文内容主要源于:bilibili-尚硅谷-MySQL高级篇都有哪些纬度可以进行数据库调优?简言之:关于数据库调优的知识点非常分散,不同 ,不同的公司,不同的职位,不同的项目遇到的问题都不尽相同。虽然 查询优化的技术很多,但是大体方向上完全可以分为 和 两大块。学员表插 万条, 班级表插 万条步骤1:建表步骤2:设置参数命令开启:允许创建函数设置步骤3:创建函数随机产生字符串,保证每条数据都不同随机产生班级编号步骤4:创建存储过程创建往 表中插入数据的存储
原创
发布博客 2024.06.07 ·
1515 阅读 ·
18 点赞 ·
2 评论 ·
26 收藏

Javav-面试 | 消息队列

这种情况就是 RabbitMQ 将消息存放在内存中,当 RabbitMQ 挂掉之后,内存中的消息也丢失了,通常情况下,需要开启 RabbitMQ 持久化,就是消息写入之后会持久化到磁盘中,哪怕 RabbitMQ 自己挂掉了,恢复之后会自动读取之前存储的数据,一般数据不会丢失,除非及其罕见的是,RabbitMQ 在持久化的过程中挂掉了,就可能导致少量的数据会丢失,但这个概率是很小的。如果是大数据领域的实时计算、日志采集等场景,用 Kafka 是业内标准的,绝对没有问题,社区活跃度也很高,绝对不会黄掉的。
原创
发布博客 2024.05.30 ·
1097 阅读 ·
16 点赞 ·
0 评论 ·
11 收藏

MySQL 高级 - 第十章 | 性能分析工具的使用

在数据库调优中,我们的目标就是 。利用宏观的监控工具和微观的日志分析可以帮我们快速找到调优的思路和方式。当我们遇到数据库调优问题的时候,该如何思考呢?这里把思考的流程整理成下面这张图。整个流程划分成了 和 两个部分。字母 S 的部分代表观察(会使用相应的分析工具),字母 代表的部分是行动(对应分析可以采取的行动)我们可以通过观察了解数据库整体的运行状态,通过性能分析工具可以让我们了解执行慢的 都有哪些,查看
原创
发布博客 2024.05.24 ·
575 阅读 ·
6 点赞 ·
0 评论 ·
8 收藏

MySQL 高级 - 第九章 | 索引的创建与设计原则

MySQL 的索引包括普通索引、唯一性索引、全文索引、单列索引、多列索引和空间索引等。
原创
发布博客 2024.05.22 ·
667 阅读 ·
4 点赞 ·
1 评论 ·
10 收藏

MySQL 高级 - 第八章 | InnoDB 数据存储结构

页a、页b、页c...页n这些页可以 ·不在物理结构上相连·,只要通过双向链表相关联即可。每个数据页中的记录会按照主键值从小到大的顺序组成一个单向链表,每个数据页都会为存储在它里边的记录生成一个页目录,在通过主键查找某条记录的时候可以在页目录中使用二分法快速定位到对应的槽,然后再遍历该槽对应分组中的记录即可快速找到指定的记录。第七章、索引的数据结构参考文章:《MySQL 是怎样运行的:从根儿上理解 MySQL》— [中] 小孩子。
原创
发布博客 2024.05.09 ·
533 阅读 ·
6 点赞 ·
0 评论 ·
12 收藏

前端学习|第五章

小白开始干前端生命不息,学习不止~~以下内容源于黑马前端教程,纯属搬运工了CSS 学习 | 第三章。
原创
发布博客 2024.05.07 ·
1194 阅读 ·
25 点赞 ·
3 评论 ·
26 收藏

前端学习|第四章

小白开始干前端生命不息,学习不止~~以下内容源于黑马前端教程,纯属搬运工了上篇:CSS 学习 | 第二章一个网页中往往会应用很多小的背景图像作为修饰,当网页中的图像过多时,服务器就会频繁地接收和发送请求图片,造成服务器请求压力过大,这将大大降低页面的加载速度。因此,为了有效地减少服务器接收和发送请求的次数,提高页面的加载速度,出现了 CSS 精灵技术(也称CSS Sprites、CSS 雪碧)。核心原理:将网页中的一些小背景图像整合到一张大图中 ,这样服务器只需要一次请求就可以了。精灵图的使用:例如:十
原创
发布博客 2024.05.07 ·
719 阅读 ·
17 点赞 ·
0 评论 ·
30 收藏

MySQL 高级 - 第七章 | 索引的数据结构

MySQL官方对索引的定义为:索(index)是帮助MySQL高效获取数据的数据结构(有序)。在数据之外,数据库系统还维护者满足特定查找算法的数据结构,这些数据结构以某种方式引用(指向)数据,这样就可以在这些数据结构上实现高级查找算法,这种数据结构就是索引。索引的本质:索引是数据结构,可以简单理解为排好序的快速查找数据结构,满足特定查找算法,这些数据结构以某种方式指向数据,这样就可以在这些数据结构的基础上实现高级查找算法。索引是在存储引擎中实现的。
原创
发布博客 2024.05.07 ·
1399 阅读 ·
20 点赞 ·
1 评论 ·
18 收藏

MySQL 高级 - 第六章 | 存储引擎

MySQL从 3.23 开始就包含InnoDB存储引擎,5.5之后就默认采用InnoDB引擎InnoDB是MySQL的默认事务型引擎,它被设计用来处理大量的短期()事务,可以确保事务的完整提交(Commit)和回滚(Rollback除了增加和查询外,还需要更新、删除操作,那么,应优选选择InnoDB存储引擎除非有非常特别的原因需要使用其它的存储引擎,否则应该优先考虑InnoDB引擎数据文件结构:表名.frm存储表结构(MySQL-8.0时,合并在表名.ibd中)表名.ibd。
原创
发布博客 2024.05.04 ·
1054 阅读 ·
30 点赞 ·
0 评论 ·
18 收藏

MySQL 高级 - 第五章 | 逻辑架构

每次调用都会产生最新的当前时间,如果在一个查询请求中调用了这个函数,那即使查询请求的文本信息都一样,那不同时间的两次查询也应该得到不同的结果,如果在第一次查询时就缓存了,那第二次查询的时候直接使用第一次查询的结果就是错误的。物理查询优化是基于关系代数进行的查询重写,而关系代数的每一步都对应着物理计算,这些物理计算往往存在多种算法,因此需要计算各种物理路径的代价,从中选择代价最小的作为执行计划,在这个阶段里,对于单表和多表连接的操作,需要高效地。,它们都是独立的,独立的去申请内存空间,独立的管理各种链表。
原创
发布博客 2024.05.01 ·
2026 阅读 ·
24 点赞 ·
4 评论 ·
33 收藏
加载更多