自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

我是小假,一位Javaer ~

我是小假,一个热爱编程的普通人,希望和大家一起进步,共同成长

  • 博客(35)
  • 收藏
  • 关注

原创 【Java开发日记】为什么不推荐使用 BigDecimal 的 equals 方法做等值比较 ?

BigDecimal 是 java.math 包中提供的一种可以用来进行精确运算的类型。所以,在支付、电商等业务中,BigDecimal 的使用非常频繁。而且其内部自带了很多方法,如加,减,乘,除等运算方法都是可以直接调用的。除了需要用 BigDecimal 表示数字和进行数字运算以外,代码中还经常需要对于数字进行相等判断。说到等值比较,先看看《阿里巴巴Java开发手册》中的要求👇:那么为什么会有这样的要求呢🤔~ 其中的奥秘是什么呢🤔~

2025-05-06 10:45:57 2814 90

原创 【Java开发日记】JVM调优之垃圾定位、垃圾回收算法、垃圾处理器对比

垃圾,主要是指堆上的对象,那么如何确定这些对象是可以被回收的呢?大概思路就是,如果一个对象永远不可能被访问到,那么就是垃圾,可以被回收了如何确定对象永远不会被使用呢?如果小假的内容对你有帮助,请评论。创作不易,大家的支持就是我坚持下去的动力!

2025-05-05 15:08:10 7232 98

原创 【Java开发日记】OpenFeign 的 9 个坑

对于单个接口怎么配置超时时间,这里给出一个方案。使用@Bean@Bean为了使用ribbon负载均衡,上面加了如果使用,就会使用中配置的时间。

2025-04-28 10:41:31 7294 100

原创 【Java开发日记】一篇文章让你学会SpringCloud-微服务架构

架构的发展历程是从单体式架构,到分布式架构,到SOA架构,再到微服务架构。图1:架构演进单体架构:未做任何拆分的Java Web程序图2:单体架构示意图分布式架构:按照业务垂直划分,每个业务都是单体架构,通过API互相调用。图3:分布式架构示意图SOA架构:SOA是一种面向服务的架构。其应用程序的不同组件通过网络上的通信协议向其它组件提供服务或消费服务,所以也是分布式架构的一种。图4:SOA架构示意图。

2025-04-24 09:16:52 6456 102

原创 【Java开发日记】在SpringBoot项目中使用Netty实现远程调用

众所周知在进行网络连接的时候,建立套接字连接是一个非常消耗性能的事情,特别是在分布式的情况下,用线程池去保持多个客户端连接,是一种非常消耗线程的行为。那么该通过什么技术去解决上述的问题呢,那么就不得不提一个网络连接的利器——Netty。

2025-04-21 09:31:29 6806 111

原创 【Java开发日记】Spring MVC控制器的14个技巧

在遵循MVC架构的应用程序中,控制器(C)应该将数据传递到模型(M)中,然后在视图(V)中使用该模型。此处理程序方法返回一个 ModelAndView 保存视图名称 UserList 的User 对象和一个可在视图中使用的对象集合。这将创建具有有关受支持的方法,会话和缓存的配置的单动作控制器,然后可以在控制器的bean声明中指定这些配置。此控制器有两个处理相同URL模式的方法/login,但前者用于 GET 方法,而后者用于 POST 方法。注解也有两个额外的属性,这可能是在某些情况下是有用的。

2025-04-18 09:15:14 7700 109

原创 【Java开发日记】十个JVM核心知识点【全文万字保姆级详细讲解】

大致的GC回收流程如上图,还有一种设置就是 大对象直接进入老年代:如果在新生代分配失败且对象是一个不含任何对象引用的大数组,可被直接分配到老年代。通过在老年代的分配避免新生代的一次垃圾回收。设置了-XX:PretenureSizeThreshold 值,任何比这个值大的对象都不会尝试在新生代分配,将在老年代分配内存。内存回收跟分配策略优先在Eden上分配对象,此区域垃圾回收频繁速度还快。大对象直接进入老生代。年长者(长期存活对象默认15次)跟 进入老生代。

2025-04-15 09:07:22 6656 53

原创 【Java开发日记】6个Java 工具,轻松分析定位 JVM 问题 !

其中,S0 表示 Survivor0 区占用百分比,S1 表示 Survivor1 区占用百分比,E 表示 Eden 区占用百分比,O 表示老年代占用百分比,M 表示元数据区占用百分比,YGC 表示年轻代回收次数,YGCT 表示年轻代回收耗时,FGC 表示老年代回收次数,FGCT 表示老年代回收耗时。jstat 定时输出的特性,可以方便持续观察程序的各项指标。同样,如果没有条件使用图形界面(毕竟在 Linux 服务器上,主要使用命令行工具),又希望看到 GC 趋势的话,可以使用 jstat 工具。

2025-04-14 09:17:10 9884 54

原创 【第一期】Docker 安装

Docker 并非是一个通用的容器工具,它依赖于已存在并运行的 Linux 内核环境。Docker 实质上是在已经运行的 Linux 下制造了一个隔离的文件环境,因此它执行的效率几乎等同于所部署的 Linux 主机。因此,Docker 必须部署在 Linux 内核的系统上。如果其他系统想部署 Docker 就必须安装一个虚拟 Linux 环境。在 Windows 上部署 Docker 的方法都是先安装一个虚拟机,并在安装 Linux 系统的的虚拟机中运行 Docker。

2025-04-08 08:36:06 1307 20

原创 一篇文章让你彻底学会 Redis !【全文两万字详细讲解】

比如数据集 {1, 3, 5, 7, 5, 7, 8}, 那么这个数据集的基数集为 {1, 3, 5 ,7, 8}, 基数(不重复元素)为5。基数估计就是在误差可接受的范围内,快速计算基数。

2025-04-08 08:34:16 1606 24

原创 HTTP 教程 : 从 0 到 1 全面指南 教程【全文三万字保姆级详细讲解】

GET- 请求指定的资源。POST- 提交数据以处理请求。HEAD- 请求资源的响应头信息。

2025-04-08 08:32:42 6566 8

原创 Git 教程:从 0 到 1 全面指南 教程【全文三万字保姆级详细讲解】

什么是 Git?Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持。

2025-04-07 10:18:20 2271 27

原创 你真的会用GPT-4o 吗 ?

你想的到的你想不到的他都能做。早在上个月,Sam Altman 就提到 OpenAI 正在计划统一 GPT 系列与 o 系列模型,目标是构建一个可以自动判断任务类型的智能系统,不需要用户手动切换。我认为这个使用在电商环境下也挺不错的,在做网页设计的时候,你完全不用再请一个昂贵的设计师或者外包。在我们还沉浸在 GPT-4o 的图像生成能力时,一个更值得关注的细节被一些用户发现了:GPT-4o 现在能显示推理时间和思维链过程了。那当然是不可能的,它有Ghibi,还有卡通,像素,水墨,日式,涂鸦,复古等等。

2025-04-02 11:06:23 1148 7

原创 L1-011 A-B 【保姆级详细讲解】

定义两个字符串变量a和b,分别用于存储输入的字符串A和B。:定义一个布尔数组v,用于标记字符是否在字符串B中出现。ASCII码共有128个字符(扩展ASCII码为256个),这里使用256是为了覆盖所有可能的字符。

2025-04-01 09:19:44 1076 7

原创 Grok3 又双叒叕进化啦 ???

大家好,我是小假。最近 AI 圈的节奏简直比短视频还快。今天一个爆更,明天一个官宣,每天都在上新。这不 Grok3 又双叒叕上新了,而且还卷到了图片编辑领域。与此同时,豆包这边也不声不响地迎来了大更新。

2025-04-01 09:19:18 1124 3

原创 【Java开发日记】关于Redis 分布式锁的15问【全文万字保姆级详细讲解】

所谓的公平锁就是指线程成功加锁的顺序跟线程来加锁的顺序是一样,实现了先来先成功加锁的特性,所以叫公平锁。就跟排队一样,不插队才叫公平。前面几节讲的RedissonLock的实现是非公平锁,但是里面的一些机制,比如看门狗都是一样的。

2025-03-26 10:45:33 1235 5

原创 一篇文章让你彻底了解 Redis ! 【全文万字详解讲解】

Redis(Remote Dictionary Server)是一个开源的内存数据库,遵守 BSD 协议,它提供了一个高性能的键值(key-value)存储系统,常用于缓存、消息队列、会话存储等应用场景。

2025-03-24 14:24:19 1576 2

原创 试试手气(详解版)

这是一个二维数组,用于记录每个骰子的点数使用情况。arr[i][j]表示第i个骰子是否曾经出现过点数j。表示第i个骰子曾经出现过点数j。数组大小为[10][10],是为了方便索引(骰子编号从 1 到 6,点数从 1 到 6)。n:表示摇骰子的次数。temp:临时变量,用于读取输入的点数。

2025-03-24 14:03:45 1282 6

原创 【Java开发日记】IDEA的插件大总汇 (让你的工作效率大大提高!)

工作的时候,经常会遇到要通过 JSON 格式的字符串来创建对应的 POJO 类,JSON 简单的时候还可以通过手来敲,但是当 JSON 格式较为复杂的时候,就比较麻烦了,这个时候 GsonFormat 就很好用,只要将 JSON 字符串填到文本窗口内,然后就可以一键生成 POJO 类,并且还可以自动创建内部类。描述:Arthas 命令生成插件。具体的设置大家可以根据自己的情况来设置,是否需要使用 JSON 库,需不需要 lombok 都可以设置,以及驼峰转换和是否使用包装类型,功能还是蛮强大的。

2025-03-18 09:48:02 1358 2

原创 【Java开发日记】20 款 IDEA 主题任你选!(快来看看你最喜欢那个~)

官网主题 | Intellij Light在最开始的很长时间都是使用这个主题,最主要的问题是 白天还好,晚上写代码的话 就有点头疼了。所以官网也提供了 dark 版本现在大家大部分都是这两种中使用一种这个算是非常出名的主题了,不过在 2021.3 版本后就要收费了。不过别慌有解决办法 放在最后。

2025-03-17 19:06:53 1853 5

原创 【第三期】一篇文章让你彻底学会Docker的使用!【全文4万字保姆级讲解】

Dockerfile 是一个文本文件,包含了构建 Docker 镜像的所有指令。Dockerfile 是一个用来构建镜像的文本文件,文本内容包含了一条条构建镜像所需的指令和说明。通过定义一系列命令和参数,Dockerfile 指导 Docker 构建一个自定义的镜像。Compose 是用于定义和运行多容器 Docker 应用程序的工具。通过 Compose,您可以使用 YML 文件来配置应用程序需要的所有服务。然后,使用一个命令,就可以从 YML 文件配置中创建并启动所有服务。

2025-03-10 17:26:45 1528 5

原创 【第二期】Docker 基础知识

Docker 是一个开源的应用容器引擎,基于并遵从 Apache2.0 协议开源。Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口(类似 iPhone 的 app),更重要的是容器性能开销极低。

2025-03-04 17:07:19 1167 5

原创 一张图让你彻底搞懂什么是正则表达式!

浅说:大家好,我是小假,下面是我用思维导图做出来的正则表达式,希望能够帮助到大家!有写图示的都在最后面以图片的形式呈现~

2025-03-04 16:31:06 753 5

原创 银币(详细版)

如果这个操作会使某些银币越出了矩阵的界,那么越界的银币会自动消失。它的核心思想是找到一个矩形区域,使得该区域内的银币数量恰好为。你现在的任务是:用最少的操作次数,使得矩阵里剩下的银币数量恰好是。:将矩形区域上方或下方的银币移出矩阵的额外操作次数(取最小值):将矩形区域左侧或右侧的银币移出矩阵的额外操作次数(取最小值)如果是,则计算将该矩形区域外的银币移出矩阵所需的最少操作次数。,并计算将该区域外的银币移出矩阵所需的最少操作次数。将上方和左侧的银币移出矩阵,操作次数为。:将矩形区域上方的银币向上移出矩阵。

2025-03-02 16:42:51 1378 3

原创 三角数阵(详解版)

三角数阵输入一个整数n,请按下面规律输出n行n列的三角数阵。1<=n<=10输入格式无输出格式无输入/输出例子1输入:4输出:1 2 4 73 5 86 910输入/输出例子2输入:5输出:1 2 4 7 113 5 8 126 9 1310 1415浅说:下面对本题的思路和代码进行了详细地解释,方便大家理解~我们需要生成一个n x n的三角数阵,规律如下:第一行:1, 2, 4, 7, 11(差值依次为 1, 2, 3, 4)

2025-02-10 16:16:44 1727 5

原创 求 n 个数的最小公倍数(详解版)

你的好朋友小明最近在学习最小公倍数的知识,他妈妈给他出了100题,每一题都有n(2≤n≤20)个数,要小明求出这n个数的最小公倍数。小明现在想快点出去玩,于是想到会编程的你,能否设计一个程序,让他输入题目n个数就可以得到答案?快来帮帮小明吧!

2025-01-15 22:04:08 2024 4

原创 分解质因数(超大规模版)

(质因子连乘时按从小到大顺序)(注:某一正整数的质因子指能整除该数的质数整数,也称质因数或质约数。如24的因子有1 、2、3、4、6、8、12、24。其中是质数的是2,3 所以24的质因子就是2,3。) 例如:当N=24时 结果为:24=2*2*2*3 又如:当N=13时 (13的质因子只有13一个) 输出结果为:13=13。浅说:这个问题本身不难,难点是如何避免超时的问题,我们要把判断质数函数进行优化,分解质因数部分进行优化算法~,好啦,下面请看代码实现~输出: 38=2*19。只有一行,按格式输出。

2024-12-31 20:17:47 1481 2

原创 单词谜(详解版)

根” 单词需满足是输入字符串的前缀,且输入字符串后续部分可以看作是这个 “根” 单词打乱后的形式多次连接而成。代码整体思路是先处理输入字符串中所有字符都相同的特殊情况,然后通过循环尝试不同长度去划分字符串,验证每个长度下是否能找到符合要求的 “根” 单词,若找到则输出,没找到则输出 -1。有一种英文字谜游戏,一开始创作者选一个称为"根"的单词R,然后可能多次打乱 R,连接到 R 单词后面。如果找不到输出-1。【输出格式】 最短的根单词(是输入字符串的前缀)。如果找不到根单词,输出-1。

2024-12-13 14:17:07 1856 3

原创 禁言2(详解版)

某国有禁言单词X,输入N个单词,如果某个单词中包含禁言单词X(不分大小写),则要被出现的单词X位置要替换为"***",然后才输出。例如,s1 = "KillsbAA",X = "SB",替换后为 "Kill***AA"。例如,s1 = "KillsbAA",替换后为 "Kill***AA",然后继续查找。如果找到禁言单词 X,则将 s1 中 X 的部分替换为 "***"。例如,输入 "Sbstring",转换后为 "SBSTRING"。5)循环替换: 如果单词中包含多个禁言单词,则继续查找并替换。

2024-12-12 18:26:21 592 2

原创 Excel地址(详解版)

Excel单元格的地址表示很有趣,它使用字母来表示列号。比如, A表示第1列, B表示第2列, Z表示第26列, AA表示第27列, AB表示第28列, BA表示第53列, ... 当然Excel的最大列号是有限度的,所以转换起来不难。思路:核心思想是将整数 n 转换为 26 进制表示法,并处理余数为 0 的特殊情况(对应 Z)。通过将余数存储到数组 arr 中,并从后向前遍历数组,最终输出对应的 Excel 地址表示法。创造不易,如果对您有所帮助,请一键三连哦~你的支持是我继续创造的动力源泉~

2024-12-10 12:39:28 1168 2

原创 回文日期(逆向思维)

一年总共12个月,每月的天数都不同,二月的处理时本题一个难点,闰年的二月无非就是多了一个29日,而0229对应的回文数为92200229,9220正好为闰年,所以直接把二月看做29天就好了。牛牛认为,一个日期是回文的,当且仅当表示这个日期的8位数字是回文的。牛牛习惯用8位数字表示一个日期,其中,前4位代表年份,接下来2位代表月 份,最后2位代表日期。一个8位数字是回文的,当且仅当对于所有的i ( 1

2024-12-05 21:37:26 1663 2

原创 有多少个数字1(前缀和版)

有多少个数字1小明很喜欢喜欢数字1,他想研究两个整数之间所有整数出现了多少个数字1。现在他想求n次,a和b之间(包含a和b)的所有整数的1出现的次数,聪明的你能够帮帮小明吗?

2024-11-29 20:23:43 629 3

原创 机器翻译(队列版)

如果内存中没有,软件就会在外存中的词典内查找,查出单词的中文含义然后翻译,并将这个单词和译义放入内存,以备后续的查找和翻译。每当软件将一个新单词存入内存前,如果当前内存中已存入的单词数不超过 M−1,软件会将新单词存入一个未使用的内存单元;假设队列当前有元素 [1,2,3],现在有一个新元素 4 要入队,那么队列就会变成 [1,2,3,4]。例如,对于上面提到的订单编号队列 [1,2,3,4],当进行出队操作时,元素 1 会被移除,队列就变成 [2,3,4]。q.empty();q.front();

2024-11-24 18:33:20 824 1

原创 最长回文数

第二轮:第一个子数组装第二个元素,第二个子数组装第二和第三个元素,以此类推,最后一个子数组装n - 1个元素。第一轮:第一个子数组装第一个元素,第二个子数组装第一和第二个元素,以此类推,最后一个子数组装n个元素。输入一个包含N 个正整数的数组,求出这个数组中包含的最长的回文数组是什么, 如果有相同长度的最长回文数,输出最靠前的一个。浅说:这道题的思路倒是不难想哈~但是代码实现就有点难度啦,这道题我也是参考大佬的哈哈,第一行1 个正整数:N,N的范围在[1,1000]。输出: 1 9 7 9 1。

2024-11-20 11:31:07 803 2

原创 求质因数个数

什么是质因数?质因数:在数论里是指能整除给定正整数的质数。也就是说,如果一个质数是某个数的因数,那么这个质数就是这个数的质因数。例如,对于数字 12,它的因数有 1、2、3、4、6、12。其中 2 和 3 是质数,所以 12 的质因数是 2 和 3。如何求一个数有多少个质因数呢?举一个例子,方便大家理解~ 例:求2024有几个质因数?1. 从最小的质数开始尝试分解最小的质数是 2,我们先看 2024 能否被 2 整除。2024 / 2 = 1012,说明 2 是 2024

2024-11-17 16:30:30 2396 3

空空如也

空空如也

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

TA关注的人

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