自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 收藏
  • 关注

原创 基于docker-compose使用虚拟机搭建redis集群

【代码】基于docker-compose使用虚拟机搭建redis集群。

2024-04-30 13:43:52 267 5

原创 java导入maven项目爆红问题的一种解决方案,清除.lastupdated文件

在拉取项目依赖的时候,由于网络问题,maven依赖没有下载完的时候,会在下载目录中生成.lastupdated文件。其它项目需要引用这个依赖包的时候,看到.lastupdated文件,会默认其他线程在下载该依赖,当前线程就不会再下载了。如果网络中断了,下载请求结束,但是由于.lastupdated文件依然存在,导致了该依赖永远都下载不下来。编写脚本,清除maven仓库中所有的.lastupdated文件,运行完脚本后,重新刷新maven就可以正常下载了。

2024-04-30 13:32:33 182

原创 java注解形式实现自定义参数解析器,为方法中的参数注入值

观察以下demo代码,方法queryByCondition有两个传入参数,其中,只有id为前端传过来的,但是service还需要phone这个参数,在代码中还有很多类似的功能,如果每个接口都编写代码获取phone的值,会造成大量重复代码,影响工作效率。因此,本文通过java自定义注解的形式实现自定义参数解析器,为方法中的参数注入值。// return语句。

2024-04-28 13:37:29 278

原创 java自定义时间工具类方法,判断当前时间是否在指定有效时间之内

本文分享一个自定义的时间工具类方法,判断当前时间是否在指定时间段以内,如果不在该时间范围内,返回true,否则返回false。传值2)之间,如果不在,返回true,否则返回false。判断当前时间是否在日期2024-04-25(参数传值)中的10点(传值10)到12点(

2024-04-28 10:25:20 232

原创 面试逻辑题,有8个小球和一个天平,一个小球偏重,其它小球一样重,问最少称几次可以找出那个重球?

现在有8个小球和一个天平,已知其中1个小球偏重,其余小球重量相等。问:最少称几次一定可以找出那个重量更大的小球?

2024-04-23 15:55:39 383

原创 Mybatis批量插入大量数据的解决方案

有一个耗时较长的Job存在CPU占用过高的问题,经排查发现,主要时间消耗向MyBatis中批量插入数据。mapper configuration是用foreach循环做的。以下做法在小数据量的时候效率尚可,但是在插入大量数据的时候,性能会变差。Mybatis底层基于JDBC实现,在执行insert操作的时候,默认执行类型为Simple,会为每个语句创建一个新的预处理语句,也就是创建一个PrepareStatement对象。的语句,无法采用缓存,那么在每次循环时,都会重新解析sql语句。

2024-04-23 10:19:04 563

原创 docker-compose搭建MongoDB

【代码】docker-compose搭建MongoDB。

2024-04-17 14:09:14 513

原创 java快速排序算法详解

快速排序(Quick Sort)是一种高效的排序算法,它采用了分治的思想。基本流程是选择一个基准元素,将待排序数组分割成两部分,使得左边的元素都小于基准元素,右边的元素都大于基准元素,然后对左右两部分分别递归地进行排序。因为它使用了递归的方式,所以是一种分治算法。快速排序的时间复杂度为 O(n log n)。在平均情况下,它是最快的已知排序算法之一。然而,在最坏情况下(例如,选择的基准恰好是数组中的最小或最大元素),时间复杂度为 O(n^2)。

2024-04-17 09:41:33 295

原创 nacos连接配置中心报错[ spring.cloud.nacos.config.shared-configs[1] ] must give a dataId的一种解决方案

如果你选择分开配置服务注册和配置中心,那么application.yml中连接nacos服务端(服务注册)中的命名空间和group,必须和bootstrap.yml中指定的命名空间,group完全一致。

2024-04-08 13:41:16 296

原创 Springcloudalibaba整合dubbo与nacos实现服务调用与负载均衡

dubbo是一款开源的rpc框架,用于微服务调用。相比更常见的feign,dubbo具有更好的性能,但在配置和使用过程中比feign稍微复杂一些。dubbo框架的使用方法不像feign这么固定,网上也有各种方案,本文基于Springcloudalibaba整合dubbo的方案,用nacos作为dubbo框架的注册中心。本文默认读者已经安装好了nacos服务端。

2024-04-08 10:53:11 1080 2

原创 docker-compose安装nocos

【代码】docker-compose安装nocos。

2024-04-02 10:07:59 221

原创 Module build failed: Error: `sass-loader` requires `node-sass` >=4.的一种解决方案

node-sass需要去github上下载,直接安装有可能遇到网络不稳定的问题,我个人最后的解决方案是使用代理,在保证网络访问到github后直接下载成功。我遇到的问题和node-sass的版本无关。

2024-04-02 09:39:10 429

原创 使用Python代码统计Java项目中所有Controller接口的数量

基于Python代码编程,统计Java项目中所有接口的数量,输入为项目路径,输出接口数量,只统计restfull风格的接口。

2024-03-14 16:11:05 434

原创 Caffeine本地缓存快速上手教程,通俗易懂

使用缓存的优点是可以减少直接访问数据库的压力。Caffeine是目前单机版缓存性能最高的,提供了最优的缓存命中率。用法和java中的map集合比较类似,底层使用一个ConcurrencyHashMap来保存所有数据,可以理解为一个增强版的map集合,增强的功能有设置缓存过期时间,缓存数据驱逐,统计缓存数据等。本文会大量使用详细的代码示例,通俗易懂地帮助大家学会使用Caffeine本地缓存。

2024-03-13 14:09:22 1779

原创 Maven对项目构建过程中的每个步骤的详细介绍

Maven除了管理项目的依赖以外,还能对项目的构建过程进行管理。除了使用命令行以外,我们平时经常用IDEA图形化界面进行操作,如图所示:本文将详细描述Maven对项目构建过程中的每一个阶段。

2024-03-06 11:00:11 470

原创 Lombok的@Slf4j注解使用并集成Logback日志框架调试代码

我们平时在写代码的时候,除了IDE断点的形式以外,还会用到System.out.println在控制台中输出相关的调试信息。本文介绍了在控制台中输出调试信息的另一种实现方式,使用Logback日志框架可以在控制台中用自定义的格式,输出更详细的信息,还能将日志信息保存在文件中,以便后续分析。lombok的@Slf4j注解省略了创建日志类的代码,可以简化代码开发。

2024-02-29 16:57:55 724

原创 在消息队列kafka多消费者组消费同一Topic场景下的idea调试debug断点进不去的解决方案

不同类型的消息发到同一个Topic中,设置多个消费者组,为每个消费者组打一个标记。每一种消费者组只能消费对应的消息类型。这样做的好处是避免设置多个Topic,简化代码开发的同时性能损耗小。问题出现在消费端,由于多个消费者组对象随着项目初始化而初始化,导致了你的断点不一定能准确打在对应的消费者上,出现的问题就是进不去断点。所以,让断点生效有一个折中的方式,直接在被@KafkaListener修饰的代码中将消费者组的类型写固定。但是一定要记得调试完断点以后再改回来。

2024-02-25 18:58:30 613

原创 docker-compose在虚拟机上搭建zookeeper+kafka3.0.0集群

以docker-compose的方式搭建zookeeper+kafka3的集群,比起用docker命令的方式更加简单,还能保留配置信息。不会docker-compose没关系,按照我下面的操作步骤即可。集群的结构是三个zookeeper节点加上三个kafka节点,zookeeper镜像的版本是3.8.0,kafka的版本为3.0.0。在安装前默认你已经安装好了docker和docker-compose。

2024-02-24 19:04:40 857

原创 RedisDesktopManager无法远程连接到Linux虚拟机中Redis的docker容器的一种解决方案

除了RedisDesktopManager以外,使用java代码也无法连接到centos7虚拟机中的docker容器中的Redis ,按照网上其他博主的解决方案,在排除Linux防火墙问题,端口映射问题,redis.conf配置文件问题以后,仍然无法在虚拟机外访问到redis容器。我通过恢复之前快照的方式仍然无法连接到redis容器。在重启centos系统后,不用做其他修改,就用RedisDesktopManager连接上了虚拟机中的redis docker容器。

2024-02-21 20:50:23 747 1

原创 git基于idea的.gitignore文件内容,直接用就行

java编程,git相关,对于idea编辑器,好用的.gitignore文件

2024-02-19 12:09:05 341

原创 Win11专业版安装集成了谷歌框架的安卓子系统,包含谷歌商店

本文基于Win11专业版,通俗易懂地教会你在Windows11系统上安装集成了谷歌服务的安卓子系统,过程中也包含安装Ubuntu子系统,不需要安装hyper-v。

2024-02-12 14:18:52 1609 2

原创 Win11安装Ubuntu子系统时报错0x800701bc的解决方案

管理员权限运行power shell,输入以下内容。

2024-02-11 22:21:32 582

原创 win11修改host文件的方法

win11修改host

2024-02-06 20:42:12 1031

原创 Linux中ln链接命令的2种用法创建软链接和硬链接

Linux中的ln命令,是link的缩写,表示链接。该命令的作用是建立文件或文件夹的软链接或硬链接。

2024-02-06 20:24:33 542

原创 Windows11专业版安装安卓子系统详细教程,可以在电脑上运行安卓软件

你想在Windows系统上运行安卓软件吗?在Windows系统上安装安卓子系统是目前最佳解决方案之一。本文的安装教程基于Windows11专业版(10.0.22631 版本 22631),已经不需要再安装Hyper-V和虚拟机平台。

2024-01-31 19:07:18 3330

原创 Python实现java代码生成器之枚举类

为了提高java开发效率,我用Python代码实现了一个代码生成器,用于生成java枚举类。

2024-01-27 20:24:59 328

原创 为什么SpringBoot日志系统默认集成Logback

这种组合的优势在于 SLF4J 提供了统一的日志抽象层,使得你可以在程序代码中使用相同的 SLF4J API,而底层的具体日志实现可以灵活切换。你可以根据项目的需求,在 pom.xml 或 build.gradle 中进行相应的依赖配置,然后进行相应的配置更改。需要注意的是,Log4j2 本身也是一个非常强大且成熟的日志框架,具有许多先进的特性,如异步日志、插件系统等。SLF4J 是一个为 Java 提供简单日志的门面(Facade)框架,而 Logback 是 SLF4J 的默认实现。

2024-01-26 23:30:10 465

原创 Java通过包名获取类的字节码文件的绝对路径

输入为包名,输出该包名下面所有类的字节码文件的绝对路径,也就是获取\target\classes\路径下的.class文件的绝对路径,代码参考如下。

2024-01-20 16:01:01 382

原创 Typora,Markdown,.md文件替换图片目录路径

各位刚使用Typora作为Markdown编辑器的小伙伴,很多人会忘记设置图片保存地址。Typora中只能更改新图片的保存位置,而不会改变原有图片的路径,默认图片位置为绝对路径。如果不解决图片路径问题,当涉及到需要将markdown(.md)文件移动到其他设备上时,很可能会因为图片路径的改变而无法显示图片。在这里,我选择使用python代码,将原有.md文件中的图片绝对路径,改为自定义的新路径,修改后保存为一个新文件。

2023-12-12 15:44:44 350

原创 详解基于JDK和cglib的两种java动态代理实现方式,通俗易懂

Java动态代理是一种在运行时生成代理类以代替实际类的技术。它通常用于实现面向切面编程(AOP),允许你创建一个代理对象,该代理对象可以拦截方法调用,并在方法调用前后执行自定义的逻辑。在实际项目中通常用于日志记录、性能监控、事务管理等方面。本文主要介绍两种常见的java动态代理方式。

2023-11-13 23:05:56 200

原创 Git将旧分支的代码复制到新分支中

使用git将旧分支的代码复制到新分支中

2023-07-21 10:25:33 1736

原创 Module build failed: Error: Node Sass version 7.0.1 is incompatible with ^4.0.0.

解决node sass版本冲突问题问题描述见标题解决方法:npm uninstall node-sassnpm i -D sass

2022-01-22 00:53:09 3215 2

原创 matlab批量修改csv文件中元素的值,适用于其它能用Excel打开的文件格式

以下matlab代码作用为批量修改(文件数1到任意)csv文件中的值,例如将所有大于0的数修改为1clc; clear all;path = ''; % 读取output_path = ''; % 输出路径mkdir(output_path);num_csvfiles = 1; % 要修改的csv文件的数量for idx = 1:num_csvfiles i = idx; if (mod(idx,10)==0) fprintf(1,'Processing %

2021-12-15 19:44:12 1529

原创 Maven安装本地jar包的一种补充方法

今天在安装canal包到Maven本地仓库的时候遇到的问题用的是其他博主提供的mvn-install方法安装的,安装完显示的没有问题pom文件中没有被标红,maven本地仓库中也有对应文件。可是在使用时无法导包,重构完项目后提示软件包不存在。在无意间发现了解决办法:不使用命令行的mvn install安装方法使用IDEA,Jar包中必须包含pom文件解压jar包IDEA中点击下图中的加号,选择解压后的jar包中的pom文件导入成功并能成功使用相应的jar包问题发生的原因尚不明确,希望各位能

2021-11-28 16:55:24 185

原创 配置fastDFS遇到错误org.csource.common.MyException: getStoreStorage fail, errno code: 2和recv package size -

昨天配置fastDFS时遇到控制台报错org.csource.common.MyException: getStoreStorage fail, errno code: 2调试代码过程中提示信息recv package size -1 != 10代码问题出现在下面这一行:uploadResults = storageClient.upload_file(file.getContent(), file.getExt(), meta_list);看了网上很多相关资料,和我相同报错的博主的解决办法并

2021-10-05 17:01:44 926 1

原创 Maven导入坐标失败问题的排查方法

很多小伙伴在使用maven管理jar包的过程中会遇到很多问题,尤其是导包失败会提示很多错误,下面介绍几种排查方法1.重点,先确保maven坐标的代码是正确的,很多刚开始练习java项目的小伙伴一般会直接选择从资料中提供的PDF文件中复制maven坐标,但是因PDF文件本身的编码问题,直接复制会得到错误的代码。举例:正确的代码从PDF中复制到的代码虽然很无聊,但是显然“-”的长度不一样,这个问题导致的除了在版本号报错以外,还有根本的原因是因为坐标名写错导致找不到jar包,无论你的本地仓库是否

2021-10-01 16:26:35 1526

原创 python之argparse模块常见用法包含实例(超详细)

相信很多刚开始学习深度学习算法代码的小伙伴,在一开始总会遇到关于argparse模块的代码,网上关于这方面的文章有很多但新手入门往往不是那么容易。本文从一个计算圆柱体体积的实例出发,帮助大家理解关于argparse模块的一些常见用法。点击查看官方参考文档1.介绍argparse模块是命令行选项、参数和子命令解析器。可以让人轻松编写用户友好的命令行接口。适用于代码需要频繁地修改参数的情况。先看下面一段没有使用argparse的代码import math # 为了获取πdef cylinder

2021-05-19 01:43:22 45913 8

空空如也

空空如也

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

TA关注的人

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