
Bug异常解决合集
文章平均质量分 71
本专栏专门收录讲解开发学习时遇到的各种bug异常,探究其产生原因及解决办法。希望通过本系列文章,让大家少走一些弯路。敬请各位免费订阅本专栏哦
一一哥Sun
孙玉昌,十年软件开发及授课经验,专注大学生毕业设计及面试求职私塾式指导!阿里云专家、优快云博客专家、掘金优质创作者!曾任国内物流行业独角兽企业架构师,参与国内领先的智能物流系统平台天眼/冷链/订单/车次中心系统研发;主导某在线教育App及后台架构;负责大庆油田采油管理系统,春华旅业云计算系统等大型项目研发。目前担任某知名机构技术研发经理,上海校区教学负责人,培养了大批入职阿里、IBM、百度、华为等名企的高薪学生。坚持一心做教育,做一流教育的理念,被学生爱称为"一一哥"!
展开
-
亲测有效!Win7中如何安装高版本的NodeJS
正常情况下,Win7支持的Node.js最高版本是V13.14,但在开发过程中,有不少Vue项目或其他需要依赖Node环境的项目,对Node版本要求都比较高。对此,我们要么重装操作系统到Win8以上,要么就得想办法在Win7中安装高版本的Node,否则很多项目在编译打包时可能会出现警告信息或失败。这种方法本人亲测可用,如果你也需要在Win7中安装高版本的Node.js,可以尝试一下这种方式。首先我们准备一个高版本的Node.js安装包,比如V16.15.1版本。原创 2023-08-31 15:26:54 · 3821 阅读 · 1 评论 -
JedisDataException DENIED Redis is running in protected mode...异常的解决办法
其实之所以产生该问题,主要是因为你的项目所在的服务器,和Redis服务器不是在同一台机器上,产生了跨进程的远程访问。而Redis服务器在默认情况下开启了“保护模式”,也不允许非本机的进程来访问。所以,如果我们想解决该问题,只需要修改Redis的配置文件即可。另外,如果你的Redis客户端软件,比如RedisDesktopManager私活连接不上你的Redis服务器,大概率也是这个原因。觉得具有一定的普遍性,所以特地给大家讲解一下该问题的解决过程。以上就是解决该问题的办法和步骤,你Get到了吗?原创 2023-08-09 15:04:13 · 738 阅读 · 0 评论 -
手把手教你解决传说中的NPE空指针异常
NullPointerException空指针异常是因为有变量的值为空null,然后我们在代码中又调用了这个变量的方法而导致的。我们只需要找到这个变量,然后将这个变量的值改为非空即可解决NPE异常。首先我们来看看这个既简单,又经常出现的空指针异常NullPointerException,下面这段代码运行后就会抛出NPE空指针异常。,该如何解决Java中的NullPointerException空指针异常。也就是说在第14行代码中,有值为null的变量调用了方法,我们只需要找到那个变量将它的值改为非空即可。原创 2023-02-13 09:09:12 · 1048 阅读 · 4 评论 -
手把手带你解决ClassCastException类型转换异常
就会发生异常,因为teacher1是JavaTeacher类型,而不是H5Teacher 类型,类型不匹配,所以就会产生java.lang.ClassCastException异常。所谓的ClassCastException类型转换异常,其实本质上就是被转换的类型不匹配,我们只需要直接将引用对象的类型和被转换的对象类型改成一致的类型,就可以完美解决了。上面的代码运行后,就产生了如上图所示的类型转换异常,那么该问题是怎么产生的,又该怎么解决呢?既然问题的原因我们找到了,那么接下来就可以很容易地解决了。转载 2023-02-09 09:04:22 · 739 阅读 · 4 评论 -
Java小白常见异常|ArithmeticException算数异常的解决过程
通过这个案例,我们会发现,在学习的过程中,我们的基础知识一定要牢固!基础知识薄弱的童鞋,可以联系我获取免费基础资料。如果你还有其他问题,可以在评论区给我留言,壹哥看到了会及时给你解答。原创 2022-12-21 09:08:04 · 4569 阅读 · 4 评论 -
Maven项目启动时遇到的那点麻烦事儿
启动Maven项目时遇到的那点麻烦事儿。原创 2022-12-16 09:51:25 · 453 阅读 · 2 评论 -
Mybatis的BindingException异常产生原因及解决办法详解
在Mapper.xml中通过namespace属性和接口绑定,这个属性中设置的需要绑定的接口全类名。这里设置的是com.qf.mapper.EmpMapper,就代表当前EmpMapper.xml就和EmpMapper.java绑定了。然后在通过标签中的id和接口中的方法名称保持一致,这样就完成了方法和sql语句的绑定。这些操作都配置完成后MyBatis才能正常的运行,调用方法时才可以找到对应的SQL语句。原创 2022-12-02 09:29:03 · 3398 阅读 · 13 评论 -
异常解决!针对文件I/O写入操作时FileNotFoundException异常的修复
I/O对于在Java学习路上的初学者来说,简直就是一道长长的坎儿。我们在使用I/O的过程中,会有许多的异常需要处理,并且其中还带有一系列的验证逻辑在其中。如果在学习过程中,我们的基础打得不牢靠,那么可能会由逻辑问题引发出一系列的异常。而这些类似的异常,从代码层面来检测是没有问题的,只是逻辑部分出现了问题。今天就以一个实际案例来给大家举例说明,下面是一段示例代码,看起来并没有什么问题。那么上面的异常该怎么解决呢?我们继续往下看。原创 2022-11-28 09:31:33 · 3765 阅读 · 8 评论 -
SpringBoot中yml文件key值不匹配,引发的空指针异常解决办法
}本文出现的问题只是在开发中比较常见的一些问题,但对于我们开发人员来讲,我们在完成业务开发的同时,也应该追求细致以及善于预判和分析,这样才能让我们在互联网这个领域不断积累丰富的经验!!!原创 2022-11-07 11:29:57 · 2183 阅读 · 24 评论 -
细节决定成败:探究Mybatis中javaType和ofType的区别
今天,给学生讲解了Mybatis框架,学习了基础的ORM框架操作及多对一的查询。在练习的时候,小张同学突然举手求助,说在做预习作业使用一对多查询时,遇到了。原创 2022-11-03 09:37:16 · 1764 阅读 · 23 评论 -
复合查询与过滤查询的区别,记ElasticSearch检索时踩过的”坑“!
今天的这篇文章,不知道给各位带来了什么样的启发?有时候一个小小的参数,如果你很熟悉,可能啥问题都不会发生;但如果你不知道,这个小小的参数,却可能会你让你在”大坑“里爬很久都出不来。所以,希望各位在学习的时候,一定要认真对待每一个API,有时候不经意的一个小方法,都足以解决你的大问题。当然,在你学习的路上,一个好的”老师“,也是非常重要的。一个好的老师知无不言言无不尽,会详细地把各种情况都尽可能地给大家分析预测到,这样才会避免各位少走弯路,避免浪费时间。如果你想遇到一个这样的好老师,可以私信壹哥哦。原创 2022-09-21 09:47:56 · 1232 阅读 · 38 评论 -
微服务踩坑之NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder.<init>问题的解决
由于SpringCloud的运行需要依赖SpringBoot,之前SpringBoot版本采用的是1.5.9.RELEASE版,SpringCloud采用的是Camden.SR5版,可以完美配合.今天突然把SpringBoot升级到2.0.3,然后SpringCloud版本还是Camden.SR5版本,如果报了如下异常:NoSuchMethodError: org.springframewor...原创 2019-07-10 21:23:14 · 15102 阅读 · 1 评论 -
MySQL连接数据库的URL可以携带的参数
MySQL连接数据库的URL可以携带的参数一. MySQL的url地址中可以携带的参数1️⃣.autoReconnect:当数据库连接丢失时是否自动连接,取值true/false,缺省为false;2️⃣.maxReconnects:如果autoReconnect为true,此参数为重试次数,缺省为3次;3️⃣.initialTimeout:如果autoReconnect为tru...原创 2019-07-07 14:06:07 · 1834 阅读 · 0 评论 -
MySQL中的级联删除与更新策略on delete restrict on update restrict
MySQL中的级联删除与更新策略on delete restrict on update restrict在MySQL中,当我们执行级联删除与级联更新时,可能会执行On Delete Restrict和On Update Restrict语句,这两个语句中都可以有Restrict,No Action, Cascade,Set Null属性,我简单总结一下这些属性的含义。比如有如下SQL语句:/*==================================================原创 2020-08-20 10:35:29 · 13461 阅读 · 0 评论 -
com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value异常解决方案
一.异常信息在连接数据库时,突然出现了异常异常信息:Caused by: com.mysql.cj.exceptions.InvalidConnectionAttributeException: The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone...原创 2019-09-06 16:14:58 · 19255 阅读 · 13 评论 -
解决Emoji表情符号在MySQL数据库中存储失败的问题
解决MySQL不能存储Emoji表情问题一. 问题描述1. 问题出现背景在手机的各种输入法键盘中,会自带一些Emoji表情符号,例如:如果在移动端发布文本内容时包含了这种Emoji表情符号,通过接口传递到服务器端,服务器端再存入MySQL数据库时,不同字符类型可能会产生不同的异常现象. 1️⃣. 对gbk字符集相关类型的数据库,写入数据库的数据,在回显时,会变成 ‘口口’ ...原创 2019-07-19 13:31:00 · 1080 阅读 · 0 评论 -
ConcurrentModificationException的解决,让你明白阅读源码的重要性!
我们知道,有时候样本范围内的数据并不都是我们所需要的,某些情况下我们只需要其中的一部分。在这种情况下,我们在遍历样本时,就需要对取出的每一个样本数据进行判断,看看该样本是否满足我们的需要,对不需要的样本则要遍历删除。然而就是遍历删除这么简单的一件事情,我们在进行代码实现时也会暗含杀机,很多初学者在对集合进行遍历删除时会出现一些自己解决不了的异常。举个例子,比如我们现在有一个List集合,样本数据是["a","b","b","c","d"],现在我们的需求是要将b这个元素从List集合中删除。...原创 2022-08-11 09:37:16 · 394 阅读 · 12 评论 -
异常解决!Mybatis实体类属性名和表中字段名不一致的处理方案
以前也经常有学生问壹哥,[既然实体类的属性名和数据库的列名对不上会有问题,那我们在创建实体类的时候,让实体类的属性名跟数据库的字段名保持一致不就解决问题了吗?]其实这个事情是这样的,现在所有的公司对于Java变量的命名规范,和数据库列名的命名规范要求并不一致!Java的变量命名规范是驼峰命名法,数据库的列名命名规范是下划线区分单词命名法,这样Java实体类和数据库列名不一致就成了一种常态。...原创 2022-08-09 10:08:51 · 1784 阅读 · 37 评论 -
异常解决!前后端交互时,CORS跨域问题的解决过程
这两天壹哥在带徒弟进行前后端混合式App开发时,班里有些童鞋遇到了一个典型的前后端交互问题,问题如下图所示:上图中的这个异常,其实只要是有过相关开发经验的朋友,一眼就能看出问题所在。比如壹哥一看这个问题,就知道这是因为跨域而造成的故障,我们在前端或者后端进行相关处理就可以解决了。壹哥作为一名工作十多年的Java老油条,看到这个问题随手就可以解决掉,但既然有好几个童鞋都出现了这个故障,说明这个问题还是很经典的。那么今天壹哥。......原创 2022-08-04 10:17:22 · 3151 阅读 · 36 评论 -
启动Maven项目时遇到的那点麻烦事儿
很多初学者在刚开始使用maven构建项目时,总会时不时的遇到一些解决不了的问题,让人抓耳挠腮,花费很长的时间想办法进行解决。今天就来给大家说一个最简单、最实用的方法,教你一招搞定Maven中的问题。我们乍一看这个错误信息,就可以发现,这明显是因为8080端口被占用了!如果你把当前的IDE根据关闭,然后重新启动项目,结果会发现,还是会显示这样错误!然后你就陷入无尽的怀疑和痛苦中,这到底是因为什么呢。...原创 2022-07-19 15:12:58 · 616 阅读 · 1 评论 -
解决表单action属性传参时值为null的问题
最近壹哥有个学生在学习Servlet进行Web开发时,尝试着使用表单中的action传递参数,结果他发现在Servlet中无法接收到前端传过来的参数值。我们先来看看他的代码,具体代码如下所示:这里用action配置了后端接口及传递的参数1001。2. 后台Servlet代码这里是对应的后端Servlet代码,可以从请求参数中获取id参数的值。上面的代码执行之后,最终的打印结果是: null这个学生就很好奇,为什么id的值是null?不应该是1001吗?这是怎么回事呢?对于这样的结果,这个同学原创 2022-06-28 09:16:24 · 1522 阅读 · 0 评论 -
初学java懵了,这个异常是怎么产生的?
最近壹哥的老表开始学Java啦,结果学了还不到两天,就遇到了他解决不了的问题,然后就跑来问我了。不知有没有其他初学java的小伙伴,大家可以过来围观一下,看看下面的问题你有没有遇到过。那上面的这个问题是怎么产生的?又该怎么解决呢?大家先不要慌,且听壹哥来给大家分析一把。其实初学者遇到的绝大多数问题,都是因为粗心马虎导致的。而这个问题,也是如此。如果我们仔细观察报错的提示信息,就会发现这是因为命名不规范而导致的问题!怎么个意思?命名不规范还能导致什么问题?当然啦,就好比在清代,你非得叫”朱反清“,我觉得十有八原创 2022-06-23 09:01:20 · 547 阅读 · 0 评论 -
对Integer进行等值比较时踩到的一个坑
小伙伴们应该都知道,只要我们写代码,必然就会有BUG的存在。所以解决BUG的过程会伴随程序员的一生,这就是一个无解的常态。在平时的学习和工作过程中,我们需要通过不断地实践和总结,从而形成一套属于自己的解决处理BUG的成熟方案。之前壹哥看到过论坛中有人这样评价一个程序员的水平:只会写代码不会解BUG,只能算是一个业余的程序员;会写代码又能解决一般的BUG,可以称为是一个初级的程序员;会写代码还能解决复杂的BUG,才算是一个高级的软件工程师。这话说的尽管不完全正确,但也确实有一定的道理,这充分体现了BUG解决能原创 2022-06-21 09:42:19 · 485 阅读 · 4 评论 -
集合泛型不匹配导致的ClassCastException异常解决
前几天壹哥的一个学生小K编写集合代码时,运行的结果中却出现了一个自己没见过的异常,他不知道怎么解决,于是就跑来找壹哥帮忙。下面就是小K的代码,大家可以来看看,如下所示:上述代码,一旦运行就会出现下图中的异常现象。说实话,对壹哥来说,只要一遇到bug,真是瞬间感觉连吃大盘鸡都不香了,必须立马盘它才行。上图中,我们看到了一个叫做ClassCastException类型转换的异常!为什么会出现这个bug呢?其实如果我们仔细检查一下代码,就会发现原来是集合中的值写错了!我们声明的集合泛型是Double类型的,结果添原创 2022-06-16 09:56:41 · 992 阅读 · 0 评论 -
ArrayIndexOutOfBoundsException数组下标越界异常的解决过程
对于刚开始学习Java的大部分人来说,在使用数组的过程中,经常会遇到数组下标越界的异常。下面壹哥就以一个实际案例来给大家进行说明:运行上面的程序,会出现如下异常:二. 解决思路很多初学者遇到异常时通常都不会查看异常信息,而是通过看代码来找出原因。当然,在代码很少的情况下,这是可以的。但这样会形成一个不良的习惯:在后续编码的过程中经常忽视异常信息,直接在编码中查找异常,在代码很多的情况下,找出异常的效率极低,还可能无法找到异常引发的原因。正确解决异常的方式应该是首先查看异常信息,比如该案例中出原创 2022-06-14 08:56:59 · 11799 阅读 · 3 评论 -
UnsupportedOperationException异常解决
壹哥在教课的过程中,经常会让大家思考如何才能让自己一点点成为一个经验丰富的开发大神。我觉得成为大神的一个方法就是,要养成良好的学习习惯,比如记录学习开发过程中遇到的每一个难题。一. bug 重现这不,最近壹哥的一个学生在写代码时,使用Arrays.asList()工具类想把数组转换成集合,然后他想在数组转换的集合中再添加新的元素,结果莫名其妙地抛出了UnsupportedOperationException 异常,这是怎么产生的呢?于是我就把这个异常产生的原因和解决过程记录了下来,供大家参考来养成自己的学原创 2022-06-09 09:09:22 · 2034 阅读 · 0 评论 -
解决 “通配符的匹配很全面, 但无法找到元素 ‘context:component-scan‘ 的声明“ 问题
cvc-complex-type.2.4.c: 通配符的匹配很全面, 但无法找到元素 'context:component-scan' 的声明一. 异常描述在配置SpringMVC的时候,spring.xml文件中配置了<context:component-scan/>,结果提示如下异常:Caused by: org.xml.sax.SAXParseException......原创 2019-07-08 12:23:26 · 42346 阅读 · 51 评论 -
实用干货!Java乱码问题原因及解决方案大全
最近有粉丝给壹哥发来私信,问我Java里的乱码问题该怎么解决,说是自己被乱码问题给弄的焦头烂额的。其实乱码问题解决起来很简单,很多人搞不定乱码是由于没有找到导致乱码的根本原因!试想,如果你都找不到导致乱码的根本原因,就去网上一通百度查找,即使网上的内容讲地头头是道,但结果还是不能解决自己的问题。于是你就得出结论,网上的文章都是垃圾........其实,这是因为自己没找到问题产生的根源,你没有对症下药啊大兄弟!对于一些有经验的开发者来说,想遇到乱码还真不容易,但对于一些新手来说,乱码几乎是家常便饭!所以壹哥今原创 2022-06-07 09:01:08 · 179721 阅读 · 10 评论 -
”一个馒头引发的血案“|记Mybatis之BindingException异常的产生及解决过程
前几天壹哥带学生做一个项目,需要更新数据库中的车辆信息表,具体需求是要根据指定车辆的设备id(编号和设备ID均非主键)来更新车辆信息。壹哥要求学生们用Mybatis进行实现,所以就在对应的Mapper.xml文件中自定义SQL语句。结果有个学生在调用对应接口时爆出了一个BindingException异常,一下子就造成了整个模块崩溃,但他不知道这个异常该怎么解决,于是就慌慌张张地跑来问壹哥。其实我们在学习的时候,很多初学者都会遇到一些奇葩的问题而不知道怎么解决。那么接下来,壹哥就以Mybatis中的这个常见原创 2022-06-02 02:00:00 · 464 阅读 · 0 评论 -
异常解决及问题分析博客系列汇总
因为优快云没有分类归纳博客的功能,所以特写本帖汇总各种异常解决系列教程,方便大家查阅!SQLIntegrityConstraintViolationException: Duplicate entry 'xxx' for key 'yyyzzz'异常解决创建MockMvc对象时空指针异常NullPointException的解决办法Mock测试时产生HttpMediaTypeNotS.......................................原创 2020-05-08 15:28:44 · 931 阅读 · 6 评论 -
解决Spring OAuth2 每次生成的access_token和refresh_token都是新的问题
解决Spring OAuth2 每次生成的access_token和refresh_token都是新的问题一. 问题描述我们的项目中使用到了Spring OAuth2,但是在利用Spring OAuth2生成access_token和refresh_token的时候,每次传递过来username和password,生成的对应的token都是一个新的值,过期时间也一直是最新的默认值89400...原创 2019-07-22 14:36:04 · 9706 阅读 · 3 评论 -
NoSuchMethodError: org.springframework.data.redis.connection.RedisConnection.set([B[B)V异常处理办法
NoSuchMethodError: org.springframework.data.redis.connection.RedisConnection.set([B[B)V异常处理办法一. 异常描述在将我的Spring boot项目版本升到2.0.3,集成了Spring Security OAuth2(默认版本),redis(默认版本),并且用redis来存储token,项目正常启动后,...原创 2019-07-22 13:44:54 · 3619 阅读 · 0 评论 -
There is no PasswordEncoder mapped for the id “null”异常解决办法
There is no PasswordEncoder mapped for the id “null”异常解决办法一. 问题描述Spring security 5.0中新增了多种加密方式,也改变了默认的密码格式.我们来看一下官方文档:The general format for a password is:{id}encodedPasswordSuch thatidi...原创 2019-07-22 15:23:21 · 28877 阅读 · 10 评论 -
Encoded password does not look like BCrypt异常解决办法
Spring Boot Security中Encoded password does not look like BCrypt异常解决办法一. 异常描述在SpringSecurity升级到新版本(SpringBoot2.x)后,因为默认把之前的明文密码方式给去掉了,所以在对授权客户端的密码进行加密时可能就会出现Encoded password does not look like BCry...原创 2019-07-22 13:57:31 · 11940 阅读 · 2 评论 -
com.mysql.jdbc.Connection.isValid(I)Z错误解决办法
AbstractMethodError: com.mysql.jdbc.Connection.isValid(I)Z错误解决办法一. 异常描述我的项目采用SpringBoot开发,在升级到SpringBoot2.0.x之后,本来mysql驱动包采用的是5.0.7,结果启动项目时突然报如下异常:java.lang.AbstractMethodError: com.mysql.jdbc....原创 2019-07-22 15:05:38 · 6614 阅读 · 4 评论 -
SpringBoot中“Failed to configure a DataSource: ‘url‘ attribute is not specified and no embedded datas
一. 异常现象我在Spring Boot中关联MySQL、Mybatis进行数据库开发时,按照正常步骤添加了相关数据库的依赖,也进行了必要的数据库配置,结果在项目启动时出现如下异常信息:***************************APPLICATION FAILED TO START***************************Description:Failed to configure a DataSource: 'url' attribute is not sp原创 2021-06-17 16:33:50 · 20486 阅读 · 2 评论 -
访问远程数据库时,产生Access denied for user ‘root‘@‘xxx.xxx.xxx.xxx‘ (using password: YES)异常的解决办法
一. 异常现象我编写了一个SpringBoot项目,项目中连接的数据库服务器地址是192.168.87.107,然后打包生成了对应的jar包,上传到192.168.87.109这个Linux服务器中部署。部署成功后登录访问,我输入了用户名和密码,结果产生了如下异常信息:org.springframework.jdbc.CannotGetJdbcConnectionException: Failed to obtain JDBC Connection; nested exception is ja原创 2021-06-09 10:34:05 · 10802 阅读 · 0 评论 -
java.lang.IllegalStateException: Request caching is not available. Maybe you need to initialize the
java.lang.IllegalStateException: Request caching is not available. Maybe you need to initialize the HystrixRequestContext解决一.异常现象我在利用Hystrix组件进行微服务开发,实现服务降级时,遇到了如下异常信息:java.lang.IllegalStateException: Request caching is not available. Maybe you need原创 2021-05-11 17:40:00 · 444 阅读 · 0 评论 -
unable to find valid certification path to requested target的异常解决办法
unable to find valid certification path to requested target的异常解决办法一.异常现象我在利用cas-overlay-template搭建单点登录服务器的时候,服务器正常启动起来,然后我又搭建了一个cas客户端,也配置好了与服务器的连接,结果我在浏览器访问客户端的api时,浏览器提示出现500异常。然后控制台提示信息如下:java.lang.RuntimeException: javax.net.ssl.SSLHandshakeExce原创 2021-04-23 13:00:39 · 19200 阅读 · 3 评论 -
“CAS的服务记录是空的,没有定义服务”的异常解决
一. 异常现象我在利用cas-overlay-template搭建单点登录服务器的时候,服务器正常启动起来,然后我又搭建了一个cas客户端,配置好了与服务器的连接,结果在访问客户端的时候,浏览器出现如下提示信息:"未认证授权的服务CAS的服务记录是空的,没有定义服务。 希望通过CAS进行认证的应用程序必须在服务记录中明确定义。"二. 异常原因根据提示信息,说是在cas服务端中没有定义服务,其实就是需要我们在服务端记录每个客户端信息,这样才能通过认证。于是我打开cas服务.原创 2021-04-23 10:36:16 · 3222 阅读 · 1 评论