自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

王华春_Jason

———随风潜入夜 润物细无声

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

原创 使用Redis作为缓存提升应用性能的利器

本文介绍了如何使用Redis作为缓存来提升应用性能。通过合理的缓存架构设计和缓存更新策略,我们可以充分利用Redis的优势,并结合Spring Boot来简化开发工作。希望本文对你理解和应用Redis缓存有所帮助。Redis。

2023-10-24 00:00:00 249

原创 探索Redis速度之谜

Redis,作为一款高性能的内存数据库,一直以来都因其出色的速度而闻名。然而,Redis的速度之快究竟源自何处,其中隐藏着怎样的奥秘?在这篇博客中,我们将深入探索Redis速度之谜,揭开其快速性能背后的原理和机制。通过分析Redis的架构、内存存储、复制和事件驱动等关键方面,我们将带您进入Redis的速度奇观,一同探索其中的秘密。

2023-09-11 14:24:04 336

原创 Windows本地安装配置Qcadoo MES系统

Qcadoo MES是一款功能强大且灵活的开源MES(制造执行系统),旨在为制造业务提供全面的管理和监控解决方案。本篇博客将教您如何在Windows操作系统上安装和配置Qcadoo MES系统,以便您能够轻松管理和监控制造过程。通过按照以上步骤,您已成功在Windows本地安装配置了Qcadoo MES系统。现在,您可以开始使用Qcadoo MES来管理和监控您的制造过程。如果您遇到其他问题或需要更多帮助,请参考官方文档或社区支持。

2023-08-01 17:58:05 1500

原创 我的创作之旅:机缘、收获与憧憬

每当我完成一个项目时,我都会将自己的经验记录下来,分享给他人。我发表的文章引起了许多读者的关注,他们成为了我的忠实粉丝。更重要的是,我通过博客结识了许多志同道合的领域同行,我们相互学习、交流,共同成长。虽然时间和精力都是有限的,但我通过合理的时间管理和优先级安排,努力平衡创作与工作学习。我希望能够继续深入技术领域,让自己能够走的更远,并通过我的创作和分享影响更多的人。我希望自己的博客能够成为技术交流的平台,吸引更多的读者和同行,共同探索和创造。

2023-07-12 10:22:47 212

原创 探索Redis内部数据结构

Redis支持多种数据结构,每种数据结构都有其特定的用途。

2023-06-14 14:05:39 1048

原创 系统学习IT技术的方法与经验

在开始学习一门新的IT技术之前,首先要了解该技术的基本概念、应用领域和发展趋势。我通常会通过阅读相关的技术书籍、在线文档和参考资料来获取这些信息。同时,我也会关注行业动态,了解该技术在实际项目中的应用情况。将所谓的“新技术”,与自己之前掌握的已有知识(认知),建立关联关系,跟之前学习的技术做对比,找出相似或同类项。这样一来所谓的“新技术”也就变旧了,从心里上也不会那么抵触,这样学习也会更快、更牢。

2023-06-02 11:58:30 412

原创 轻松安装Redis:不用担心配置问题

其中,-it 表示使用交互式 Shell 模式启动容器,--rm 表示容器停止后立即删除容器,--link my-redis:redis 表示连接到名为 "my-redis" 的 Redis 容器,redis 表示使用的 Redis 客户端镜像名,redis-cli 表示启动 Redis 客户端命令行工具,-h redis 表示连接 Redis 服务的主机名为 "redis"(容器名),-p 6379 表示连接 Redis 服务的端口号为 6379。在安装完成后,需要进行 Redis 的配置。

2023-05-26 11:20:53 595

原创 快速掌握Redis基础知识及使用技巧

Redis 是一个高性能、基于内存的键值数据库,其主要特点是支持多种数据结构和高并发读写操作。在本文中,我们将介绍 Redis 的基本概念和使用方法,以帮助读者快速入门 Redis。

2023-05-22 13:18:56 964

原创 一次学会 Docker Compose:部署和管理多个 Docker 应用程序

Docker Compose 是 Docker 官方提供的一个工具,用于定义和运行多个 Docker 容器的应用程序,可以通过一个 YAML 文件来配置应用的服务,然后使用命令来启动、停止和管理应用的服务。使用 Docker Compose 的好处是可以避免手动编写和执行一大堆的docker run命令,而是使用一个配置文件来定义整个应用的服务,从而实现简单、高效、一致性的应用部署和管理。

2023-05-10 18:07:51 2061

原创 CentOS安装Nginx

在安装Nginx之前,需要先下载Nginx的软件包。至此,CentOS安装Nginx的教程就结束了。如果有问题可以在评论区留言。,如果看到Nginx的欢迎页面,则表示安装成功。编译安装过程可能需要一些时间,请耐心等待。

2023-05-05 16:52:11 1263

原创 Docker基础知识全解析

上面对 Docker 进行了基础知识的全解析。我们了解了 Docker 是什么以及它的核心概念,包括 Docker 镜像、Docker 容器、Dockerfile 和 Docker Compose。我们还介绍了如何使用 Docker 来管理应用程序和构建容器化的应用程序。特别是用这种提问方式来进行分享,我学到了很多,在没有提问之前,总感觉自己好像都会了,但是真正实践的时候发现很多问题还是一窍不通。​。

2023-04-28 17:06:23 1371

原创 Docker快速部署springboot项目

总的来说,本文通过介绍在IDEA中使用docker插件实现快速打包并部署项目的方法。这种部署方式适用于开发过程中需要频繁打包部署的场景。当然,还有其他的部署方式,如使用Jenkins等自动化工具。不过无论采用哪种方式,核心的操作步骤都类似:打包项目并将打好的包上传到服务器,最后启动项目。具体要看实际情况和需求,选择最适合自己的部署方式。

2023-04-25 16:36:33 2511 1

原创 Ubuntu安装Docker

如果一切正常,您将看到 Docker 运行的 Hello World 示例。

2023-04-14 18:36:47 981

原创 Ubuntu安装Nginx

最近的工作中总是需要用到Nginx,每次都要去查查,索性今天写个自己的,Nginx是一款高性能的Web服务器和反向代理服务器,它的特点是稳定性好、资源消耗少、可以支持高并发等,被广泛应用于各种Web应用中。在安装完成后,您需要配置Nginx。Nginx的配置文件位于/usr/local/nginx/conf/nginx.conf。在安装Nginx之前,您需要安装一些依赖库,包括build-essential、libpcre3-dev、zlib1g-dev和libssl-dev。4.编译并安装Nginx。

2023-03-29 13:09:04 902

原创 安装MinIO

编辑MinIO服务器配置文件,以便告诉MinIO在哪个目录下创建存储卷,并在哪个端口上启动MinIO服务器。从MinIO的官方网站上下载MinIO二进制文件。MinIO是一个高性能的、分布式的对象存储服务,能够在常规硬件上支持PB级别的存储规模。为了使MinIO能够正常工作,需要创建一个MinIO服务器配置文件。其中,MINIO_VOLUMES指定了MinIO存储卷的位置,而MINIO_OPTS则指定了MinIO服务器的启动参数。步骤4:创建MinIO服务器配置文件。步骤5:编辑MinIO服务器配置文件。

2023-03-27 14:28:42 2828 1

原创 java.lang.OutOfMemoryError: GC overhead limit exceeded问题分析及解决

我们学习再多的理论知识,不如一次生产实践中遇到一次问题带来的收获多。当然这里分享的如有错误还望指出,只有这样才能不断的进步。Java OOM 基础篇:常见的OutOfMemoryError 场景二 : GC overhead limit exceeded 问题详解 | HeapDump性能社区。

2023-01-01 06:00:00 56095 5

原创 火遍全网的chatGPT

最近网上非常火爆的CHATGPT,它是OpenAI开发的一款开源的自然语言处理 (NLP) 模型,用于实现对话生成和语言模型预测。CHATGPT 模型基于 GPT-3 (Generative Pretrained Transformer 3) 模型构建,拥有语言理解和文本生成能力。CHATGPT 模型可以用于实现聊天机器人、智能助手、辅助翻译等应用。该软件目前还处于测试阶段,我有幸玩了几把,给我的第一感觉是还不错,连马斯克也在感叹“CHATGPT 好得吓人,我们离强大到危险的人工智能不远了”。

2022-12-12 15:01:33 34141 5

原创 EasyExcel实现导入并校验

总结公司业务中需要用户导入Excel数据,并且每次几万条,要求速度快,用户操作方便灵活,有些非必填字段的数据可以为空。当然目前有很多成熟的框架都可以实现该功能,在这里就不详细的描述我们是如何选择这些框架的过程,我们选择的是阿里的easyExcel框架,号称操作简单、省内存、性能稳定等。导入功能本身并没什么复杂的,这里主要想分享下我在

2022-12-07 18:18:41 14417 2

原创 MongoDB多条件动态查询

公司业务框架中有需要用到MongoDB数据库进行数据的存储,前端需要在该框架下进行多条件的动态组合查询。如果在之前mysql中该问题非常好实现,那么我们使用的是MongoDB,又该如何实现呢?

2022-11-11 14:05:52 3075 1

原创 Ubuntu安装Jenkins

2、maven环境maven官方网站:Maven – Download Apache Maven(1)下载安装包(2)linux创建文件夹(3)解压该文件夹(4)进入maven文件夹(5)修改文件(6)改环境变量(7)重新加载配置文件(8)查看是否安装成功jenkins官方网站:War Jenkins Packages注意:Jenkins对jdk有要求(官方网站有说明)3、将下载好的jenkins安装包上传到新建的文件夹中4、在jenkins文件

2022-10-24 21:01:50 2048 3

原创 常用Excel多种格式转Csv

在开发过程中经常有遇到需要将Excel转换成csv形式,Excel中的格式有.xlsx和.xls两种,关于这方面的框架有很多,有的只能转其中的一种格式、有的需要钱;这些估计都是次要的,最主要还是需要看他们的性能,有的需要很大的并发量、有的需要上传很大的数据量、有的又需要上传的速度。当然他们的好处各有不同,我们选择其中一种最关注的是使用方便,在自己的业务场景下效率还非常的OK,那就是最适合自己的。下面分享下我们公司常用的一种方式POI。

2022-09-29 17:07:25 2440 1

原创 Xshell7如何查看登录密码

那就是当初登录的密码忘记了,但是由于当时用Xshell登录Linux的时候有保存,于是高兴的打开Xshell却是下面场景。问题的解决方法从来都不是一个,查了下百度有很多,今天想给大家分享一个我感觉比较有意思而且还很快速的方法,这里当然需要安装一个小小的软件,这个小软件非常的轻便。当然该软件的安装也是非常的方便,只需要下载该查看器的压缩包到自己的本地,然后解压该压缩包,就能够获得下图的exe文件,然后双击该exe文件就可以直接使用了。提示:如果有不知道如何打开上面的页面的话,下面的图片可以解决。

2022-09-20 17:01:59 14952 5

原创 Z字形变换(Java)

我通过做这道题学习到了很多,首先是做题的思路,这个是重点中的重点,每个人可能都有不同的思路,我也看了很多很棒的思路,对我解答都起到了很大的帮助,但是通过自己一点点亲手画出来,验证后的更有意义。其次是实现过程中通过总结出来的规律直接操作字符串,输出想要的结果,省略了中间组成Z字形的部分。最后就是通过tag标签的异或方式巧妙的实现了不同规律间的切换。总之解题的结果并没那么重要,重要的是在解题的过程中如何实现的过程,以及从该过程中的到的启发。...

2022-08-12 18:58:10 654 5

原创 swagger启动报错:java.lang.NumberFormatException: For input string: ““

项目启动,然后浏览器打开swagger文档的时候总是报下面的错误,但是文档和程序都正常。属性的注解信息出了问题,空。""无法转成Number。

2022-08-05 18:11:51 1449

原创 Nacos安装

文章帮忙您快速在您的电脑上,下载、安装并使用 Nacos

2022-07-18 17:40:49 2026

原创 mybatis-plus分页查询默认最多查询500条记录的问题

一、背景描述Springboot项目集成了Mybatis-plus,最近在做一个导出功能,我的详情里面可能会有上好几千条数据,后面的导出需要将详情中的数据导出来,单页查询(pageSize < 500时)很正常,需求是把详情中所有数据全部导出,但是每次导出的时候只能导出500条数据,估计是源码里加了默认限制。二、问题原因查看源码:@Setter@Accessors(chain = true)@Intercepts({@Signature(type = Statement.

2022-05-16 11:27:40 3521 3

原创 按年月日递增序列号

/** * @Title: TODO * @ClassName SerialUtils * @Date 2022/3/18 16:36 * @Version 1.0 */public class SerialUtils { private static final int MAX_VALUE = 10000; private static final String FORMAT = "yyyyMMdd"; private static final Format DF.

2022-03-18 17:46:07 314

原创 2021年年终总结

回首2021年,是播种希望的一年,也是收获的一年,几次想提笔总结,无奈自己肚中的墨水有限,因此就特意用CSDN的年度报告来总结自己的这一年:...

2021-12-31 17:59:15 538 1

原创 开发中常用字段校验

项目开发过程中,对一些字段的校验在所难免,如果字段少咱们还可以对字段进行if、else方式校验,但是字段多了呢?再使用这样的方式是不是会很糟糕呢?下面对一下常用的校验方式进行总结,这里主要是springboot在项目在实体层的方式进行注解式的校验:一、相关注解约束注解 说明 @AssertFalse 被注释的元素必须为 false @AssertTrue 被注释的元素必须为 true @DecimalMax(value) 被...

2021-12-05 16:38:10 1698 1

原创 1024节献上最新鲜的京东一面总结

京东一面总结1、做个自我介绍吧2、你有参与整个框架的技术选型吗?3、你们为什么会选择springcloud阿里巴巴?4、为什么没有选择用dubbo?5、看到你们项目上有用分片上传,断点续传,你先介绍下是怎么实现的?6、你们项目上是怎么做熔断的?7、你们是怎么在项目上做sentinel来实现?能说说它的原理吗?8、你们是怎么配置的呢?9、你们没有做集群吗?10、你对nacos写的是精通,你介绍下?11、一致性是怎么保证的?12、链路追踪为什么用skywalking?13、你们是怎么实

2021-10-24 21:22:36 347 4

原创 深入理解JMM内存模型

目录一、JMM内存模型产生的背景?二、什么是JMM内存模型?三、JMM内存模型用来解决什么问题?四、JMM内存模型与JVM内存模型有什么关系?1、JMM是Java物理内存模型2、JVM是运行时内存模型3、JMM内存模型和JVM运行时内存模型的关系一、JMM内存模型产生的背景?JMM(Java内存模型)源于物理机器CPU架构的内存模型,最初用于解决MP(多处理器架构)系统中的缓存一致性问题,而JVM为了屏蔽各个硬件平台和操作系统对内存访问机制的差异化,提出了JMM的概.

2021-10-17 16:27:26 1811 2

原创 硬核干货Java集合详解

目录一、问题是最好的老师二、集合的由来三、数组存在的问题四、数组和集合的区别?五、集合是什么?六、集合整体架构图七、集合架构图详解1、Collection2、ListArrayListLinkedList3、SetHashSetTreeSetLinkedHashSet4、MapHashMapTreeMap集合框架整体思维模式:一、问题是最好的老师思考:首先要明白集合是怎么来的?为什么要有集合?它来给我们解决了什.

2021-10-17 11:02:17 845

原创 微服务灵魂摆渡者——Nacos实践

目录一、前置条件二、基本概念二、启动服务注册与发现三、启动配置管理四、数据持久化到MySQL本篇主要是以面向Spring Cloud的使用者为主,通过两个示例来介绍如何使用 Nacos 来实现分布式环境下的配置管理和服务注册发现。本篇Nacos版本为1.1.4通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-config 实现配置的动态变更。 通过 Nacos Server 和 spring-cloud-s...

2021-10-06 21:03:53 813 1

原创 微服务灵魂摆渡者——Nacos工作原理详解

Nacos一般读作/nɑkəʊs/,这个名字来源于“DynamicNamingandConfigurationService”。其中na取自“Naming”的前两个字母,co取自“Configuration”的前两个字母,而s则取自“Service”的首字母。服务(Service)是Nacos世界的一等公民,Nacos致力于帮助您发现、配置和管理微服务。...

2021-09-21 17:31:50 1752 2

原创 图文并茂的RabbitMQ工作模式

一、简单模式1、简单模式一对一模式,一个生产者、一个消费者,生产者发送消息,消费者消费消息。生产者:也就是要发送消息的程序消费者:消息的接收者,会一直等待消息到来消息队列:类似一个邮箱,可以缓存消息;生产者向其中投递消息,消费者从其中取出消息2、实例代码://生产者public class Producer { public static void main(String[] args) throws IOException, TimeoutException

2021-09-15 20:55:18 715

原创 RabbitMQ安装

安装在阿里云服务器一、下载RabbitMQ官网我用的版本二、安装rpm -ivh erlang-18.3-1.el7.centos.x86_64.rpmrpm -ivh socat-1.7.3.2-1.1.el7.x86_64.rpm --force --nodepsrpm -ivh rabbitmq-server-3.6.5-1.noarch.rpm1、默认没有开启管理界面,开启web页面管理插件:systemctl enable rabbitm.

2021-09-14 15:12:25 186

原创 亲手给你搭建spring源码环境

一、源码下载GitHub - spring-projects/spring-framework: Spring FrameworkSpring-Framework: Spring Framework 是一个开源的Java/Java EE全功能栈(full-stack)的应用程序框架,以Apache许可证形式发布,也有.NET平台上的移植版本二、构建工具1、下载Gradle Distributions注意:版本还是很重要,特别是跟你的jdk版本要对应,我试过很多版本,我选择的是

2021-09-11 20:29:57 2032 3

原创 【多线程系列】synchronized详解(4)

一、Java对象头synchronized使用的锁是存放在Java对象头里面,具体位置是对象头里面的MarkWord,MarkWord里默认数据是存储对象的HashCode等信息,但是会随着对象的运行改变而发生变化,不同的锁状态对应着不同的记录存储方式二、Monitor RecordMonitor Record是线程私有的数据结构,每一个线程都有一个可用monitor record列表,同时还有一个全局的可用列表。每一个被锁住的对象都会和一个monitor record关联(对象头的MarkWo

2021-07-04 08:15:54 411

原创 【多线程系列】synchronized详解(3)

一、什么是Monitor?借用大佬对Monitor理解的实例:https://www.hollischuang.com/archives/2030先来举个例子,然后我们在上源码。我们可以把监视器理解为包含一个特殊的房间的建筑物,这个特殊房间同一时刻只能有一个客人(线程)。这个房间中包含了一些数据和代码。如果一个顾客想要进入这个特殊的房间,他首先需要在走廊(Entry Set)排队等待。调度器将基于某个标准(比如 FIFO)来选择排队的客户进入房间。如果,因为某些原因,该客户客户暂时因为其

2021-06-29 19:25:47 191 1

原创 【多线程系列】synchronized详解(2)

一、方法上的synchronized1、实例方法:class Test{ public synchronized void test() { }}//等价于class Test{ public void test() { synchronized(this) { } }}2、静态方法:class Test{ public synchronized static void

2021-06-25 22:56:39 261 2

空空如也

空空如也

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

TA关注的人

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