自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【已解决】Invalid value type for attribute ‘factoryBeanObjectType‘: java.lang.String 报错解决

mybatis-spring 官方项目中使用 mybatis-plus-boot-starter 当前最新版本 3.5.4.1 ,其中依赖的 mybatis-spring 版本为 2.1.1。此时因为 factoryBeanObjectType 是 String 类型,不符合条件而抛出异常。更新本地的Mybatis plus版本。

2024-09-03 13:26:42 7884 2

原创 【已解决】Correct the classpath of your application so that it contains compatible versions of the classe

升级Mybatis版本或者Plus的版本,我是升级了下Mybatis的版本,升级成3.0.3就可以解决这个版本冲突的问题了。遇到这个问题,就是你的Pom依赖中的Mybatis Plus和Mybatis中存在版本冲突了。

2024-09-03 13:25:31 5571

原创 Cannot deserialize value of type java.lang.Integer from Object value (token JsonToken.START_OBJECT)

在你的情况中,错误消息“Cannot deserialize value of type java.lang.Integer from Object value (token JsonToken.START_OBJECT)”明确指出,JSON解析器期望得到一个整数值,但却收到了一个对象(即JSON对象,以{开始,以}结束)。如果你的控制器方法只需要detId的值,你应该确保发送的JSON是一个简单的整数值或者是一个包含单个整数字段的JSON对象,但你的方法应该能够处理这种结构。方案一:调整JSON结构。

2024-08-02 10:26:27 2252 1

原创 【已解决】连接VPN,报L2TP连接尝试失败,因为安全层在初始化与远程计算机协商时遇到一个处理错误

你可以尝试暂时关闭防火墙(注意,这可能会降低系统安全性),然后重新尝试连接,以确定是否是防火墙导致的问题。如果可能,尝试使用其他VPN协议(如OpenVPN、IKEv2等)连接到远程服务器,以查看是否是L2TP协议本身的问题。有时,重新启动L2TP服务可以解决连接问题。步骤:按下Windows + R键,打开“运行”对话框,输入regedit并回车,打开注册表编辑器。如果你使用的是第三方防火墙软件,请检查其设置,确保它允许L2TP协议通过。选择你要连接的VPN,右键选择“属性”,然后选择“安全”选项卡。

2024-08-02 10:23:56 11791 1

原创 【已解决】Mybatis报Tag name expected,小于号<无法转义错误(低级但会经常犯的错误)

以下是一些常见的需要转义的符号以及它们的转义方式,但请注意,MyBatis本身并不直接提供转义机制,这些转义通常是在SQL语句中通过数据库的特性或。,说明是在XML文件中,遇到了Mybatis无法转义的符号。Mybatis中不像我们的Navicat编辑器,有一些特定的符号是无法正常表示的,需要用到其他的符合替代。小编最近在写Mybatis代码的时候,遇到了一个比较愚蠢的问题,这个问题我想记录在此,和大家分享一下,大家引以为戒,不要犯我这种低级错误。,在这里给大家拓展一些Mybatis需要转义的符号叭。

2024-07-02 10:23:16 1180

原创 【已解决】教你一招删库跑路(开玩笑)!删除PostgreSQL数据库会经常报错误:其他用户正在使用源数据库“XXX”DETAIL:这里有8个其他绘画正在使用数据库

常常听见身边的友友说,干不下去了就删库跑路等等话术,其实我早就想告诉他,删库也不是一件简单的事情,不是你想删除就能直接删除的喔~小编会在后文为大家介绍删除数据库中遇到的一些常见的问题,希望对您能有所帮助。也奉劝大家哈,不要动不动就删库跑路,孩子气,直接找公司的服务器机房哈哈哈哈哈哈哈哈哈。

2024-06-28 16:40:12 355

原创 【已解决】Kafka实战中配置生产者和消费者,生产者可以正常生产消息到Kafka,消费者消费不到消息(小编遇到的小坑)

小编接到任务,需要开发Kafka的模拟消息生产以及消息消费入库的简单业务功能,但是始终是消息可以生产到队列中,也可以在KafkaMap中看到生产的消息,消费者也是订阅了对应的主题,并且也指定了消费组,让小编为此花费了些时间排查问题。后来发现,是小编在编写业务代码的时候,遵循了常规的开发架构,将生产者和消费者的代码写到了业务层,并且是按照接口和实现类的方式,类似下面的情况。2.在开发消息队列的生产和消费者时,建议直接写单独的1个业务类即可,因为收发消息的逻辑比较简单,直接一个业务类就能够搞定。

2024-06-27 11:17:48 325

原创 【已解决】Linux操作场景中遇到报Found a swap file by the name “XXXXXX.swp“

遇到这个问题,是因为我临时将Linux页面在Vim页面中正在编辑中,忽然电脑宕机,导致意外中断了我的编辑,当我再次进入到LInux环境,并且想重新编辑我的目标文件时,使用vim命令就会提示Found a swap file by the name "XXXXXX.swp"这将尝试从".gfsstart.sh.swp"交换文件中恢复".gfsstart.sh"文件的更改。但是,如果你正在编辑".gfsstart.sh"文件,并且Vim或Vi突然崩溃或你意外关闭了终端,那么你应该首先尝试恢复你的工作。

2024-06-20 17:27:59 1003

原创 【已解决,与git远程仓库统计代码行数不一致问题】NumberoflinesannotatedbyGitisnotegualtonumberoflinesinthefile,Checkfileenco

首先确定一下,你是否可以修改你的代码中的Annotation,如果可以,那么好我们往下操作。2、这个类中在某个地方加一个空格,这个时候你的这个类的修改会被git检测到。1、找到你的那个不被git识别行数的那个类,修改右下角的换行格式。如果你本身是CRLF的window版本,那么修改成LF的MAC版本。4、将这个类的的换行格式改回window版本即可。3、commit这个类。

2024-06-06 11:25:39 946 1

原创 MySQL篇——详细分库分表原理,深入解读分库分表时机、策略以及生产解决方案!

MySQL分库分表是为了解决大规模数据的存储和查询问题。当一个应用的数据量逐渐增大,单个数据库可能无法满足存储和查询的需求,这时就需要进行分库分表。分库指的是将数据按照一定的规则拆分到多个数据库中,每个数据库中存放一部分数据。通过分库可以提升存储的能力,每个数据库可以存储更多的数据量。分表指的是将一张大表按照一定的规则拆分成多个小表,每个小表只存放一部分数据。通过分表可以提升查询的性能,每个小表查询的数据量较少,查询速度更快。

2024-06-06 11:24:14 1528

原创 MySQL面经——如何分析慢SQL?帮你应对Java面试常见的数据库问题!

可以采用EXPLAIN 或者 DESC命令获取 MySQL 如何执行 SELECT 语句的信息。

2024-06-05 09:38:00 286

原创 Redis篇——Zset在Redis中底层存储数据结构,深入浅出详细剖析底层存储逻辑,一篇文章帮你拿下!

先后往Zset集合中添加数据,底层的存储数据结构发生了变化,从压缩列表变成了跳表。为什么会出现这个情况呢?首先先了解什么是压缩列表。

2024-06-05 09:34:02 1226

原创 Redis篇——String类型在Redis中底层存储数据结构,全方位分析底层存储原理!

String是Redis中最基本的数据类型,它可以存储任意类型的数据,比如文本、数字、图片或者序列化的对象等等。一个String类型的键最大可以存储512MB的数据。

2024-06-04 09:51:42 1907 1

原创 Redis篇——Redis常规存取数据的底层原理,言简意赅帮你彻底弄清底层原理!

2、对这个hash值模上数字的长度,最后会得到一个数组的长度。比如最后模余了1,就定为到了这个key的存储数组位置。3、最后将这个key和value存储到数组对应的链表上,存储的形式是如上图,以key-value的形式存储。3、通过key获取到数组长度为1对应链表上的key为目标key的数据并返回。1、首先会对存的key进行hash运算,拿到这个key的hash值。1、首先会对存的key进行hash运算,拿到这个key的hash值。2、对这个hash值模上数字的长度,最后会得到一个数组的长度。

2024-06-04 09:45:52 259

原创 Redis篇——带你认识和了解Redis主从复制原理,一篇文章帮你搞定!

Master接到命令后,启动后台的存盘进程,同时收集所有接收到的用于修改数据集的命令,在后台进程执行完毕之后,Master将传送整个数据文件到Slave,并完成一次完全同步!当从机成功连接到主机上,主机上会和从机进行一次完全同步数据,把快照发送给从机,等待从机加载完成后,再把缓冲区(也就是repl_baklog文件)的命令给从机执行,这个过程就叫做全量复制。从机连接到主机,全量复制结束,当主机的数据进行修改,主机会把收集到的修改命令存储到repl_baklog文件中传给从机,完成同步。

2024-06-03 09:47:25 491 1

原创 Redis篇——详细介绍Redis分片集群,一篇文章帮你搞定!

主从和哨兵看可以解决高可用、高并发读的问题。但是依旧是解决不了下面的两个问题:1、海量数据存储问题2、高并发写的问题Redis分片集群是一种分布式系统,用于将Redis的数据分布在多个Redis节点上。这种集群通过将数据分成多个部分,并将每个部分存储在不同的节点上,可以实现Redis的高可用性和高性能。分片集群主要着眼于高扩展性,它由多个Redis实例组成一个集群,然后按照一定的规则,把收到的数据划分成多份,每一份用一个实例来保存。这样可以处理大量数据,解决海量数据存储和高并发写的问题。

2024-06-03 09:41:15 798

原创 JVM篇——JVM调优实战,JVM调优参数汇总

1、根据需求进行JVM规划和预调优2、优化运行JVM运行环境(慢、卡顿,一般都是通过单接口压测或者Skywalking进行全链路压测3、解决JVM运行过程中出现的各种问题,比如Memory Leak、OOM。

2024-05-31 09:00:00 546

原创 MySQL面经——如何定位慢SQL?

一般出现慢SQL,也就是以下的几种情况1、聚合查询2、多表查询3、表数据量过大4、深度分页查询对于我们使用方来说,表象就是页面数据加载过慢,接口压测时间过长(超过1s)

2024-05-31 09:00:00 1237

原创 Redis篇——超详细、超细节I/O多路复用介绍,回答Redis为什么单线程这么快!涵盖阻塞I/O模型、Linux内核空间以及Redis网络模型等常见技术点,一篇文章帮你彻底拿下!

redis为什么能够在单线程的情况下,轻松应对高并发的访问,Redis提供的I/O多路复用功不可没!Redis 使用 I/O 多路复用来处理连接,这意味着它不会为每个连接创建一个新的线程。而是使用一个主线程来监听多个连接,并在需要时进行处理。这种设计减少了线程切换的开销,并允许 Redis 在高并发场景下保持高性能。补充一下其他的帮助redis处理高并发请求的小帮手!事件驱动:Redis 使用事件驱动模型来处理请求。它监听套接字的 I/O 事件,一旦有数据可用,就立即处理。

2024-05-30 09:00:00 3872 1

原创 【已解决】Redis报io.lettuce.core.RedisCommandTimeoutException:Commandtimedoutafter5second(s)

报这个错误表示Redis处理的数据量太大了,响应时间超出了配置的连接超时时间,所以就报这个错误。在application.yaml配置文件中延长Redis的请求超时时间。

2024-05-30 08:45:00 845

原创 PostgreSQL篇——转译String常量

开发中常见到后台给移动端返一个字符串,字符串中其实罗列了一些1、2、3、等等的序号,移动端需要通过检索字符串中的\n转译字符,来实现分条换行的功能。

2024-05-29 11:22:11 544

原创 Nginx篇——Nginx的手动和自动日志切割,一篇文章帮你解决实战生产环境日志管理问题!

至此,关于实战中如何进行Nginx的日志切割介绍完毕,后续还会持续更新,敬请期待!下面的操作都是基于Linux环境下操作的!Nginx的日志现在都是保存在logs下。access保存的是HTTP请求的日志;error保存的是错误的日志。

2024-05-29 10:45:39 285 1

原创 Nginx篇——Nginx处理Web请求(Worker抢占机制)

首先Nginx是异步非阻塞的,通俗的讲就是如果此时只有1个Worker,那个如果客户端1则阻塞,他不会让后面的客户端都阻塞等待,而是用epoll的方式执行准备就绪的客户端,这样就解决了阻塞等待的问题了!这个过程是异步非阻塞的,也就是说,当一个请求的部分处理被阻塞时,worker进程不会一直等待,而是会立即去处理其他客户端的请求。如果worker进程在处理请求时出现问题,master进程会负责关闭这个出问题的worker进程,并重新启动一个新的worker进程来继续处理请求。这个地方是比较重要的知识点!

2024-05-29 10:42:39 541

原创 【已解决】系统错误 1114:动态连接库(DLL)初始化例程失败。(MySQL ODBC 5.3 Unicode Driver,c:\Program Files(x86)\MySQL\Connecto

关于解决系统错误 1114:动态连接库(DLL)初始化例程失败错误的介绍完毕,需要注意的是不同的场景可能会因为不同的原因报这个错误,所以还得根据实际的场景,选择合适的方法去解决。通过“控制面板”-> “程序” -> “卸载程序”,找到对应的程序进行卸载,然后重新下载和安装。本身刚刚安装完MySQL,相关的驱动可能需要重启一下才能被扫描到,所以如果报上面的错误,第一反应是重启电脑重试。安装完MySQL,希望在ODBC中配置MySQL数据源,当我录入完数据库的相关信息点击Test测试的时候,报这个错误。

2024-04-29 16:53:25 4245 1

原创 Nginx篇——了解和认识Nginx的进程模型

而Worker进程则是实际处理网络请求的核心,它们采用单线程、非阻塞的事件模型(EventLoop,事件循环)来实现端口的监听及客户端请求的处理和响应。Worker进程之间是相互独立的,一个请求只能在一个Worker进程中进行处理,一个Worker进程也不可能处理其他Worker进程的请求。在单进程启动模式下,系统中仅有一个进程,该进程既充当Master进程的角色,也充当Worker进程的角色。它的进程模型主要采用的是多进程模型,具体来说,是“单Master—多Worker”模型。

2024-03-31 16:02:18 690

原创 【已解决】解决新安装的Visio或者Visio破解一段时间后失效,提示未激活状态,亲测有效,无脑操作即可!

2.安装完毕后,复制下面的这段脚本,在桌面上创建1个.txt文件,修改成.bat结尾的脚本文件,把下面的脚本复制进去,一定记得将编码格式保存为ANSI编码格式。3.右键,注意一定要以管理员的身份运行该脚本,运行后的cmd页面如下图,当出现“已完成”字样,退出即可,此时如果不出意外的情况下,是破解成功了。我本地是过了一段破解了一段时间,后边再打开这个Visio就提示未破解,未激活的状态,很让人头疼。1.如果是没有安装的小伙伴,可以直接点击下面的链接,直线先下载安装下。特别鸣谢东方-教育技术博主。

2024-03-31 15:57:02 101627 396

原创 【已解决】如何使用Windows server配置定时任务,通过.bat脚本定时1分钟执行一次Jar包

接上一篇文章,目前有一个小任务是在Windows server上开启定时任务,执行下载数据的jar包,要求一分钟执行一次。指的是我们脚本和jar包的根目录。注意,这个地方建议是填上,不然脚本执行的时候容易找不到脚本或者jar包。至此,定时任务的创建和执行jar包的分享结束,这个任务还是让我学到了不少的知识,希望这篇文章对你有用!10.你的定时任务就创建成功,可以在初始的界面查看你的任务的执行情况,查看任务的健康状态。6.常规页面中编写定时任务的名称和描述,按照需求设置是否一定要在用户登录的时候运行任务。

2024-03-28 10:46:32 3214

原创 【已解决】MyEclipse通过Export打jar包,详细介绍如何打引入外部jar包的情况,解决常见的报无主清单属性、外部依赖找不到问题~

7.最后找到jar包保存的位置,将项目中引入的外部依赖或其他的文件,都放到jar包存放的同级目录下,比如我遇到的问题是打完jar包,运行jar包报找不到我的配置类,也就是一个client.config客户端配置,里面就是配置了一些连接客户端的信息,我把这个文件也放到同级目录下,就可以正常调用到了。左侧的项目只选择src,其他的都不要选择,这里需要注意的就是如果引入了外部的jar包,后面单独要在打出的jar包的同级目录下创建一个lib目录,将项目中引用的外部的jar包复制进来。

2024-03-28 10:27:24 1441

原创 【已解决】URL后面#号的问题,解读一下为什么URL中最好不要出现#号!

就表示网页的index.html的icon位置,浏览去读取到这个URL会自动将icon展示出来。pwd中出现了#号,那么后面的d$paramers=3都不会传到服务器端,导致请求失败!例如:http://www.baidu.com/index.html#icon。在浏览器中,#被浏览器解读为代表网页中的一个位置。表示这个位置的标识符。例如,下面我想通过GET请求,传入用户名和密码。意味着#号后面的的字符都不会被发送到服务器上。,也就会直接造成URL错误,导致请求失败。

2024-03-26 10:38:15 886

原创 【已解决】null value in column “XXX“ violates not-null constraint当我数据库的某个字段设置了默认值并且不为空,但是控制台报某个字段不能为空

一般来说,是因为插入的主键Id为空引起的。这就和我们数据库中的设置默认值产生了冲突,我设置了默认值,为什么他还是报这个字段不能为空的错误?了,出现这个错误的原因可能就在于我们入参的时候确实没给他传参数,但是我们的SQL中有这个字段,所以把这个报错的字段删掉,问题就能解决了。查看我们编写的SQL语句。

2024-03-21 16:58:15 5735

原创 【已解决】解决新版本IDEA中.java文件变成了咖啡图标而不是“C”的图标问题

新版本的Idea中,经常会出现这中Java文件忽然变成了咖啡杯子的图标,这时候我们无论怎么编写代码,都不会有任何的提示信息,倒是代码不会报错,但是很是折磨!取消勾选file->Power Save Mode,等待Idea反应一会,我们的项目就会恢复如初了哈。

2024-03-21 06:00:00 12796 8

原创 【已解决】Mybatis中的SQL语句没有语病,但是就是没法正常执行

出现这个问题的原因首先考虑我们的SQL语句的where后面的参数是否都全部有参数能传递进来,如果有部分的参数是null,那么这个SQL就没法正常的执行。如果我们不确定某个参数是不是确实要传的,那么就加上if-test的语法,这样某些参数就可以为空了!

2024-02-27 20:41:41 694

原创 【已解决】Causedby:org.springframework.beans.factory.NoSuchBeanDefinitionException:Noqualifyingbeanoftype

原因是:我们的项目在启动的时候,没有符合条件的DataSource的Bean,但是这个类是我们JDBC中自带的类!解决方案:找到项目的主启动类,在该类上面加上注解,这样,问该题就可以解决。

2024-02-27 20:40:18 1299

原创 【已解决】BeanCreationException:Errorcreatingbeanwithname

出现这个问题的时候,先检查你的分支是不是你的开发分支,如果是在Master,那么可能会存在项目启动不起来的情况(原因是项目中集中开发某个大项目的时候,涉及到的依赖可能很多,远程仓库地址也可能不一样,你在本地起master,肯定会因为jar包不存在导致报BeanCreationException: Error creating bean with name 创建Bean异常)

2024-02-26 14:12:17 2951

原创 【已解决】Cannotdeterminepathto‘tools.jar‘libraryfor17(D:/Envirnoment/jdk17.0.2)

在运行为我们的Java项目的时候报Cannot determine path to 'tools.jar' library for 17 (D:/Envirnoment/jdk17.0.2) 这个错误,是因为我之前的开发习惯都是使用的IDEA2020.2.4版本,现在该版本的IDEA不支持JDK17,所以需要升级下IDEA。比如说我之前是一直使用JDK1.8,和2020.2.4是正好兼容;2、卸载旧版本IDEA,安装兼容JDK版本的IDEA。1、下载当前版本支持的JDK版本。至此,该问题就成功解决!

2024-02-26 14:10:31 2529 1

原创 Kafka篇——Kafka实战线上问题优化之实现顺序消费,实际开发中的解决方案

然而,需要注意的是,在顺序消费中,单线程的速度可能会比较慢,因此在一些需要高性能的场景下,可能会采用多线程并发消费的方案。Kafka中顺序消费的应用场景主要涉及那些需要保证消息产生顺序和消费顺序一致的业务场景。例如,在订单处理系统中,订单的生成、支付、发货等步骤通常需要按照一定的顺序进行,以确保数据的完整性和一致性。Kafka可以通过设置特定的参数来保证顺序消费,例如设置max.in.flight.requests.per.connection参数为1,可以保证消息按照发送的顺序写入服务器。

2024-02-02 16:41:58 703

原创 Kafka篇——Kafka实战线上问题优化之防止消息丢失和消息重复消费,提供真实解决方案

由于生产者端设置了发送消息的ack为1,并且生产者把消息发送到集群并且leader已经拿到消息,正好在返回ack的时候产生了网络波动,生产者拿不到broker返回的ack所以触发了重试机制,又一次给broker发送了这条消息。那么此时消费者就会从broker中poll到两条相同的消息。因为我们把ack设置成1或者-1/all,这样生产者生产的消息发送到broker中,会等待leader或者至少leader和一个副本同步到消息才会返回ack,如果生产者同步消息失败,会进行重试。二、防止消息重复消费。

2024-02-02 16:40:55 935

原创 JavaScript篇——如何使用浏览器控制台,一篇文章带你彻底搞清!

至此,关于常见的浏览器控制台的使用介绍完毕,后续后台开发人员或者产品经理调试Web页面的时候,会经常使用这个工具的,所以很有必要学习如何使用它!1、使用浏览器控制台打印内容(相当于Java的systen.out.println)3、source界面:可以查看源码,还可以对程序进行调试。console.log(想要打印的内容);4、NetWork查看 网络的请求。(2)就会在控制台打印出变量的值。2、使用浏览器控制台玩alert。(2)就会弹窗我们想要知道的内容。(1)在浏览器控制台输入。

2024-01-31 22:55:45 1122

原创 对称加密工具类,详细功能请见代码,含详细注释,拿走不谢!

本文章主要给开发朋友们提供一个支持加密的工具类,取走直接使用,想要了解加密的功能,有兴趣的可以追下源码,挺有意思!

2024-01-31 22:50:19 171

原创 Java实现用户登录功能,提供验证码验证服务,几个工具类帮你拿下,速来学习,拿走不谢!

本篇文章助力你实现简单的用户登录功能,并且提供验证码验证服务。提醒一下各位同僚,工具类的出现是为了简化开发,提高我们的开发效率哈,但是还是提醒一下珍惜开发新功能的机会,无论功能简单与否,都是你锻炼成长的大好机会!发车!

2024-01-27 23:26:26 660

SSM整合的图书管理系统

整合了Spring、SpringMVC和Mybatis,对spring-dao.xml、spring-service.xml、spring-mvc.xml配置文件基本配置的整合,综合到applicationContext.xml配置文件,完善了Controller调用service层,service层调用Dao层的常规架构,系统可以实现基本的增删改查,后续会逐步完善,此项目可以作为空项目的起手,里面的配置文件可以直接使用!

2023-02-24

空空如也

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

TA关注的人

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