Java基础一篇过(八)常见异常速查
一、引言
开发过程中可能会遇到各种各样的异常,这里还是汇总一些比较典型的异常,有些比较直观的异常如空指针这种就不写了,此文可作为异常速查用。
二、异常大军正在来袭~
IllegalArgumentException(方法的参数错误)
描述:这个异常通常发生在参数不符合要求时,程序主动抛出的场景
解决:检查调用的方法参数是否按照方法要求来设置
图示:


NoSuchMethodException(方法不存在异常)
描述:这个异常通常发生在反射场景去调用一个不存在的方法时抛出
解决:检查调用是否合理,方法权限是否开放。
图示:


IllegalAccessException(访问权限异常)
描述:这个异常通常发生在反射场景去调用一个没有权限的方法抛出
解决:检查调用是否合理,或使用反射的setAccessible(true)进行暴力访问。
图示:


ArithmeticException(数学运算异常)
描述:这个异常通常发生在除法除数为0的情况
解决:检查调用的运算值,先做是否为0的校验。
图示:


ClassCastException(数据类型转换异常)
描述:这个异常通常发生在继承于同一个父类的子类间相互转换时
解决:避免父类强制向下转型。
图示:


NoSuchBeanDefinitionException(为定义容器bean异常)
描述:这个异常是在使用@Resource或者@Autowired注解注入一个还未在Spring容器中定义的bean时发生
解决:查看spring的scan目录有没有指向对应的bean目录,并在引入接口的实现类上加入@Service注解或者@Component等注解【根据实现类的分层去选对应的注解】来标识这是一个Spring容器的bean
图示:


Invalid bound statement (not found)(mybatis的数据绑定异常)
描述:这个异常一般是发生在使用mybatis时,数据或者映射路径不对时会抛出的异常
解决:
- 1、可以查看mapper的java文件的方法名和xml文件的id是否一致
- 2、xml文件的namespace属性是否指向正确的路径【正确路径:指向mapper的java文件】
- 3、检查mapper.xml方法的parameterType类型与resultType类型是否正确设置。PS:resultMap与resultType是不一样的。
- 4、检查项目的application.yml中配置的mapper文件存放路径是否正确
图示:





Java基础一篇过(八)常见异常速查的更多相关文章
- 「Java面试题/知识点精华集」20000+字的Java基础知识篇(2020最新版) !
本文已经收录进我的 79K Star 的 Java 开源项目 JavaGuide:https://github.com/Snailclimb/JavaGuide (「Java学习+面试指南」一份涵盖大 ...
- Java基础复习笔记系列 八 多线程编程
Java基础复习笔记系列之 多线程编程 参考地址: http://blog.csdn.net/xuweilinjijis/article/details/8878649 今天的故事,让我们从上面这个图 ...
- java基础——入门篇
整体大纲图 1.认识java 核心知识点:JVM.搭建Java开发环境.java的发展史.java特点.java程序类型.垃圾收集器.J2SE下载和安装.环境变量的配置和测试.以及简单的开发工具的使用 ...
- Java基础学习笔记十八 异常处理
什么是异常?Java代码在运行时期发生的问题就是异常. 在Java中,把异常信息封装成了一个类.当出现了问题时,就会创建异常类对象并抛出异常相关的信息(如异常出现的位置.原因等). 异常的继承体系 在 ...
- java基础面试题:运行时异常与一般异常有何异同?error和exception有什么区别? 请写出你最常见到的5个runtimeexception?
Throwable是Java错误处理的父类,有两个子类:Error和Exception. Error:无法预期的严重错误,导致JVM虚拟机无法继续执行,几乎无法恢复捕捉的 Exception:可恢复捕 ...
- 【Java基础总结】Java基础语法篇(上)
Java基础语法 思维导图 一.Java语言介绍 1.Java应用平台 JavaSE(Java Platform Standard Edition):开发普通桌面和商务应用程序,是另外两类的基础 Ja ...
- 黑马程序员——【Java基础】——面向对象(二)异常机制、包(Package)
---------- android培训.java培训.期待与您交流! ---------- 一.异常机制 (一)异常概述 1.异常:就是程序在运行时出现不正常情况. 2.异常类:程序在运行时,出现的 ...
- Java基础-JVM篇
1.1 .线程 这里所说的线程指程序执行过程中的一个线程实体.JVM 允许一个应用并发执行多个线程.Hotspot JVM 中的 Java 线程与原生操作系统线程有直接的映射关系.当线程本地存储. ...
- Java基础系列篇:JAVA多线程 并发编程
一:为什么要用多线程: 我相信所有的东西都是以实际使用价值而去学习的,没有实际价值的学习,学了没用,没用就不会学的好. 多线程也是一样,以前学习java并没有觉得多线程有多了不起,不用多线程我一样可以 ...
随机推荐
- HDFS的数据流读写数据 (面试开发重点)
1 HDFS写数据流程 1.1 剖析文件写入 HDFS写数据流程,如图所示 1)客户端通过Distributed FileSystem模块向NameNode请求上传文件,NameNode检查目标文件是 ...
- swagger2配置详解
1.写在controller上的注解 1.1 @Api 代码 @Api(tags = "用户相关接口", description = "提供用户相关的 Rest API& ...
- ClickHouse 参数配置
转载自:https://xw.qq.com/cmsid/20200806A0PQ7X00?ADTAG=amp 在 ClickHouse 进程中,CPU 的主频越高越好,通常建议使用 32 以上的机型, ...
- openvswitch ovs-appctl 使用
参考链接:https://www.cnblogs.com/zqyanywn/p/10501590.html 1. fdb/show bridge 列出指定桥上每个MAC直至与VLAN的对应信息,并且包 ...
- go chan 缓存与阻塞
原文链接:Go语言第十一课 并发(三)Channel缓存与阻塞 Channel的缓存 前面介绍过channel的创建方法: channel_test := make(chan string) 其实它完 ...
- Spring Boot Jpa 多条件查询+排序+分页
事情有点多,于是快一个月没写东西了,今天补上上次说的. JPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象-关系表的映射关系,并将 ...
- .Net MongoDB批量修改集合中子集合的字段
环境:.Net Core 3.1 (需要导入.Net MongoDB的驱动) 模型 /// <summary> /// 收藏 /// </summary> public cla ...
- idea创建web项目,不能自动导入tomcat包,导致调用request的方法时,无法正常调用
问题现象 分析原因 reques不能正常调用它的各种方法是因为没有导入tomcat包,所以不能正常调用request对象中的各种方法. 解决办法 ================== ======== ...
- vue + vant 上传图片之压缩图片
<van-uploader v-model="fileList" multiple :after-read="afterRead" :max-count= ...
- React State
React 里只需要更新组件的state,然后根据新的 state 重新徐娜然用户界面(不要操作DOM). class Clock extends React.Component { construc ...