自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(41)
  • 资源 (1)
  • 收藏
  • 关注

原创 北京JAVA基础面试30天打卡06

本文介绍了Redis中的三个关键问题及其解决方案: 热点Key问题:通过客户端缓存、Key分散、集群分片、动态检测和降级处理缓解高并发访问压力。 Redis集群原理:基于16384个Slot分片、主从复制和去中心化架构,通过Gossip协议实现高可用与数据分布。 Big Key问题:采用拆分Key、优化数据结构、渐进式操作、压缩存储或迁移至其他数据库等方法,解决大内存占用和性能瓶颈。 文章还提供了检测工具和预防建议,帮助优化Redis性能与稳定性。

2025-08-10 23:26:45 276

原创 北京JAVA基础面试30天打卡05

Redis提供了RDB快照和AOF日志两种持久化机制,RDB定期保存数据快照,恢复快但可能丢失数据;AOF记录每次写操作,数据更完整但文件较大。主从复制通过SYNC请求和RDB快照实现数据同步,支持读写分离。数据过期删除策略包括定时删除、惰性删除和定期删除,以兼顾性能和内存管理。淘汰策略有noeviction、allkeys-lru等,其中allkeys-lru最为常用,采用近似LRU算法抽样淘汰。实际应用中,应根据业务需求选择合适的持久化和淘汰策略组合。

2025-08-09 23:51:15 555

原创 北京JAVA基础面试30天打卡04

摘要: 单例模式通过饿汉式(线程安全)、懒汉式(需同步锁)、双重检查锁(volatile+synchronized)、静态内部类(延迟加载)和枚举(防反射/序列化)实现线程安全。策略模式将算法封装为独立策略类(如支付方式),通过上下文动态切换,避免条件分支。模板方法模式定义算法骨架,子类实现特定步骤(如流程框架)。三者分别解决对象创建、行为扩展和流程复用问题,核心在于解耦与灵活性。

2025-08-07 22:30:47 512

原创 北京JAVA基础面试30天打卡03

本文介绍了Java并发编程中的三个核心概念。1) AQS(AbstractQueuedSynchronizer)是JUC包的核心框架,通过状态变量和FIFO队列实现锁和同步器,支持ReentrantLock、Semaphore等工具类。2) Synchronized与ReentrantLock的区别:Synchronized是JVM内置的简单锁,而ReentrantLock基于AQS,支持公平锁、可中断等高级功能。3) volatile关键字保证变量可见性和有序性,但不保证原子性,适合状态标志等简单场景。

2025-08-07 00:04:37 570

原创 北京JAVA基础面试30天打卡02

Java线程池通过ThreadPoolExecutor实现线程复用,常见并发工具类/CAS操作等

2025-08-05 23:52:58 694

原创 北京JAVA基础面试30天打卡01

本文总结了Java核心面试题中的三个重要知识点:1)接口与抽象类的区别,从定义、继承方式、成员变量、方法等方面进行对比;2)JDK动态代理与CGLIB动态代理的差异,包括实现方式、性能表现及适用场景;3)Java反射机制的原理与应用,详细介绍了获取Class对象、操作构造器/方法/字段的方法,并分析了反射在框架开发中的实际应用场景及其优缺点。这些知识点涵盖了Java语言特性、设计模式及底层机制,是面试中常考的核心内容。

2025-08-04 22:32:00 821

原创 Redis利用Bitmap实现签到统计

摘要:该代码实现了一个基于Redis位图(Bitmap)的用户签到系统,主要功能包括:用户签到(sign)、获取签到次数(getSignCount)、计算连续签到天数(getContinuousSignDays)和最大连续签到天数(getMaxContinuousSignDays)。系统使用"sign:userId:yyyMM"格式的Redis键存储数据,将签到状态存储在位图的不同位上,通过位运算高效统计签到情况。代码包含参数校验和异常处理,确保业务逻辑的健壮性,适用于需要追踪用户签到行

2025-07-10 13:53:53 88

原创 Minio调用客户端无法删除文件bug

摘要:调用MinIO客户端API删除文件时遇到问题,排查发现传参无误但删除失败。原因是fileName参数不能包含桶名称和开头斜杠,只需保留包括层级路径的文件名和后缀(如"2025/07/08/filename.png")。通过调整fileName格式,去除桶名和开头斜杠后成功解决删除问题。日志显示删除操作前后对比证实了该解决方案的有效性。

2025-07-09 09:33:31 187

原创 Java方法调用失败重试机制:使用 retry 工具方法或 Spring Retry

在Java中实现重试机制有两种主要方式:手动封装重试工具和使用Spring Retry。手动封装的方式通过RetryUtils类实现,提供了灵活且轻量的重试逻辑,适用于普通项目或简单服务调用。Spring Retry则通过注解方式实现,更加自动化,适合Spring Boot项目。两种方式各有优缺点,手动封装不引入新依赖,而Spring Retry则通过注解简化了代码,自动管理重试逻辑。根据项目需求选择合适的方式,可以有效提升代码的健壮性和可维护性。

2025-05-20 11:11:20 373

原创 本机电脑可以ping通别的局域网主机,但是不能被ping通

如果你的 Windows 电脑可以 ping 通局域网内其他电脑,但其他电脑无法与你通信,即使关闭了防火墙,问题可能出现在以下几个方面。你确认关闭的是**“专用网络”下的防火墙**吗?Windows 防火墙有“专用”、“公用”两种配置,要确保关闭的是你当前网络配置下的那一项。确保你使用的是局域网内的 IPv4 地址,比如 192.168.x.x、10.x.x.x 等。我的Windows电脑可以ping通局域网内的电脑,但是别人无法和我进行通信,防火墙也关了。✅ 1. 确认你的 IP 是否正确并稳定。

2025-05-19 10:37:48 1240

原创 Java百度身份证识别接口实现【配置即用】

本文介绍了如何使用百度OCR API进行身份证识别。首先,需要在百度智能云注册并开通身份证识别服务,获取API Key和Secret Key。接着,通过Java程序实现身份证识别功能,依赖包括OkHttp和Gson库。程序通过获取AccessToken、读取身份证图片并转换为Base64编码,发送请求至百度OCR API,解析返回的JSON数据,提取并输出身份证信息如姓名、性别、民族、出生日期、住址和公民身份号码。整个过程展示了从API申请到实际应用的完整流程。

2025-05-16 17:08:27 195

原创 项目设计模式:责任链模式

它的核心思想就是:将请求沿着一条链传递,每个节点(处理器)决定是否处理,或者传递给下一个节点。✅ 动态组合链路,灵活可配置(比如在 Spring 中可通过配置文件决定链路顺序)责任链分组 → 多个 ChainExecutor 分组,比如风控链、审批链。====== 再测试风险过高中断 ======✅ Context对象:贯穿整个链,传递数据。✅ 异常中断机制:某个环节失败,后续不执行。比如:一个审批流程,金额不同,审批人不同。✅ Chain注册器:自动组装链。✅ 链执行器:开始执行链。

2025-03-28 11:30:56 513

原创 MySQL聚簇索引和非聚簇索引 通俗易懂

聚集索引聚集索引(Clustered Index)是指数据表的记录按照索引的顺序进行物理存储。也就是说,表中的数据行和索引行一起存储,并且数据行的顺序与索引的顺序相同。聚集索引的特点是索引的叶节点包含了实际的数据行。在 MySQL 中,InnoDB 存储引擎默认使用聚集索引。InnoDB 表必须有一个聚集索引,如果没有显式定义主键,InnoDB 会选择一个唯一的非空索引作为聚集索引。如果没有这样的索引,InnoDB 会自动生成一个隐藏的聚集索引。

2025-03-26 15:52:24 1030

原创 Java SPI机制(Service Provider Interface)动态扩展机制

机制 方式 适用场景Java SPI ServiceLoader 加载 META-INF/services 配置 JDBC、简单插件化Dubbo SPI ExtensionLoader,支持缓存 & AOP Dubbo 框架、动态扩展Spring SPI SpringFactoriesLoader,用于 Spring Boot 自动装配 Spring 框架、Spring Boot如果你的项目只是简单的 动态加载实现类,可以直接使用 Java SPI。

2025-03-20 13:34:56 703

原创 双亲委派有哪些缺点?如何打破双亲委派?

方法 场景 解决方案**重写 findClass(),子加载器优先 需要优先加载自己的类,而不是父加载器的类 继承 ClassLoader,重写 findClass() 和 loadClass() 自定义 ClassLoader 实现模块隔离 插件化、Web应用隔离,不同模块依赖相同类 URLClassLoader 或 自定义 ClassLoader 来加载插件 动态调整。

2025-03-20 13:15:07 1036

原创 Java利用POI+JFreeChart 实现excel导出数据和图标(折线统计图)

JAVA实现excel数据+折线统计图导出

2025-03-19 17:12:47 250

原创 异地组网设计

1.首先就是安装tailsacle2.其次linux服务器进行安装指定下载命令3.登录本地账户 开启即可 选择对应的设备地址 注意:前三分钟需要等待3-104.Preferences->Allow incoming connections 点击开启5.加入新用户,邀请即可 并下载对应的客户端 输入连接即可

2025-03-11 10:27:22 173

原创 docker compose 错误failed to solve:xxx dial tcp:xx work on 100.100.100.100:53: server misbehaving

如果你使用的是自定义的 DNS 服务器,可能会导致 DNS 解析失败。你可以尝试将 DNS 服务器更改为公共 DNS,如 Google 的 8.8.8.8 或 Cloudflare 的 1.1.1.1。【阿里的223.5.5.5】:手动修改etc/resolv.con 文件 vim resolv.conf。修改之后:systemctl restart docker。

2025-02-14 13:21:25 321

原创 如何将MySQL数据整理保存到Excel表格中

将大量MySQL数据整理并保存到Excel 文件中,CSV文件和Excel 的xlsx文件的区别。

2024-12-25 14:26:09 543

原创 maven打包时出现找不到符号的错误如何解决

1.我要打包的事modules模块,但是怎么进行clean和 compile都没办法 总是出现 找不到符合,代码没有问题,所以思路就是maven关系有问题,刚好这部分事feign远程调用,因此 我们要先打包api模块。2.clean api模块 install api模块 在clean modules模块 编译成功 主要是依赖关系。

2024-12-19 14:04:52 271

原创 Error creating bean with name ‘sysJobController‘ 错误

1.出现这类错误,首先我们就是要考虑的目标类是否加入了注解,是否加入了spring管理,我的这里前些天基本没出问题,今天出问题了,所以简单排查了@RestController@RequestMapping(“/job”)2. 第二个思路就是发现如果controller 未创建成功 后面的一些列的业务层也会报错,serviceimpl接连出现类似的错误3. 接下来分析就是maven编译模块可能出现错误,于是clean 父模块 然后 compile 发现编译出现 找不到符号错误 怎么清理都依旧一样,可是报

2024-12-19 13:43:46 522

原创 MySQL索引结构原理,二叉树 平衡二叉树 B树和B+树

MySQL数据结构原文复习连接 超全

2024-12-03 13:33:01 126

原创 错误:Total 13 (delta 6), reused 0 (delta 0), pack-reused 0 remote: GitLab: You are not allowed to push

错误:Total 13 (delta 6), reused 0 (delta 0), pack-reused 0remote: GitLab: You are not allowed to push code to protected branches on this project.error: failed to push some refs to 'http:/xxxx:8500/xxxx.git'To http://xxxx/cxxxd/xxxx.git! refs/heads/master

2024-11-28 14:58:25 998

原创 linux服务器上拉取镜像失败【新镜像】failed to solve: openjdk:8: pulling from hostxxx.mirror.aliyuncs.com failed [解决]

linux服务器上拉取镜像失败【最新】failed to solve: openjdk:8: pulling from hostxxx.mirror.aliyuncs.com failed [解决]

2024-11-28 14:40:17 627

原创 EasyPoi导出数据Excel中为0或者null

EasyPoi导出数据Excel中为0或者null

2024-11-18 13:36:52 465

原创 Nacos错误:caused: errCode: 500, errMsg: do metadata operation failed ;caused: com.alibaba.nacos

服务器 IP 改变时(网络环境不稳定,如WIFI, IP 地址也经常变化)会导致 raft 记录的集群地址失效,导致选 Leader 出现问题。2.cd data 删除protocol文件 rm -rf protocol;4.docker restart nacos (不重启不生效 多try两次)。nacos 采用 raft 选举算法计算 Leader,并记录上次启动的集群地址,1.docker exec 进入nacos;

2024-11-15 16:20:14 2173

原创 npm安装yarn之后,提示‘yarn‘ 不是内部或外部命令,也不是可运行的程序

yarn 不是内部或者外部命令,也不是可以运行程序

2024-08-21 20:02:39 1884

原创 idea忽略文件

idea忽略文件1.0

2024-08-21 18:34:16 118

原创 Column ‘name‘ in field list is ambiguous

应设字段未写全 pt。

2024-07-22 20:39:20 271

原创 登录接口JWT以及验证码

1.

2024-07-17 20:34:21 666

原创 02_第二章 HTML&CSS

study11

2024-06-06 20:57:25 663

原创 idea中maven新建moudle导入依赖后无法调取或者使用依赖api注解

个人idea内部问题

2023-09-15 09:30:00 3867

原创 Vmware虚拟机修改密码

2023-09-09 19:51:02 280

原创 菜鸟之路:redis常用命令大全

命令:bgsave异步保存数据到磁盘(快照保存)lastsave返回上次成功保存到磁盘的unix的时间戳shutdown同步保存到服务器并关闭redis服务器bgrewriteaof文件压缩处理(命令)sort list by it:* desc get it:* store sorc:result sort命令之store参数:表示把sort查询的结果集保存起来。2.基于c语言编写的,可以支持多种语言的api //set每秒11万次,取get 81000次。

2023-08-30 17:43:30 439

原创 IDE快捷键总结 (遗忘自查)

近期常用。

2022-08-14 11:14:01 815

原创 SQLState: 42S22 Unknown column ‘xx_xx‘ in ‘field list‘的解决办法(xxx代表字段例如true_name)

SQLState: 42S22 Unknown column 'xx_xx' in 'field list'的解决办法(xxx代表字段例如true_name)Mybatis-解决实体类字段与数据库字段不一致的问题

2022-07-30 00:32:12 2891

原创 This is deprecated. The new driver class is com.mysql.cj.jdbc.Driver.的解决办法及原因

This is deprecated. The new driver class is com.mysql.cj.jdbc.Driver.的解决办法及原因分析

2022-07-29 18:07:43 6885

原创 Linux 下(CentOS 7) yum安装 MySQL 5.7 手把手重新装

第一步:先检查是否装过 ,装过全删看这个卸载linux下MySQLsearch_result.none-task-blog-2allsobaiduend~default-3-72859952.first_rank_v2_pc_rank_v29&utm_term=linux%E4%B8%8B%E5%8D%B8%E8%BD%BDMySQL&spm=1018.2226.3001.4187)第二步:创建一个目录 mkdir mysqlcd mysql下来再目录下进行以下操作 如有失败 删

2021-10-17 19:12:48 449

原创 菜鸟之路:抽象类不能创建对象为什么提供了构造器?

问题答案1.抽象类作为类一定有构造器,而且抽象类必须有构造器。提供给子类创建对象调用父类构造器使用的。2.抽象类虽然有构造器但是抽象类不能创建对象。抽象方法没有方法体,创建对象不能执行,所以不能创建对象。抽象类的注意事项抽象类不能创建对象,如果创建,编译无法通过而报错。只能创建其非抽象子类的对象。理解:假设创建了抽象类的对象,调用抽象的方法,而抽象方法没有具体的方法体,没有意义。抽象类一定有而且是必须有构造器,是供子类创建对象时,初始化父类成员使用的。理解:子类的构造器中,有默认的

2021-09-05 16:29:56 2989 1

原创 菜鸟之路:mysql不支持远程连接(或SQLyog可视化),错误提示:错误代码是1130解决办法

如果mysql不支持远程连接,会出现提示:错误代码是1130,ERROR 1130: Host * is not allowed to connect to this MySQL server。解决方法如下: localhost改成%进入mysql的BIN目录代码如下 复制代码mysql -u root -pmysql>use mysql;mysql>update user set host =’%'where user =’root’;mysql>flu

2021-06-01 19:22:42 2305 1

LocationHandler.java

LocationHandler.java

2025-05-07

java挡板接小球游戏.7z

1.可视化界面 2.完整实现挡板接小球游戏 3.可开始,暂停,计分,挡板变色,鼠标控制挡板移动,碰撞加速 4.实验报告 5.生成html帮助文档

2021-06-01

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除