1.无法创建ApplicationContext
原因:Spring相关jar包没有导入
2.ClassNotFoundException
原因:编译期检查异常,未正确导入jar包,也可能存在相应的依赖冲突
1.检查External Libraries中是否存在jar包
2.Project Structure -> Project Settings-> Libraries汇中是否存在依赖
3.ClassNotFoundException:filter
解决思路:
1.fiter中点击,看是否可以加载到相应的源码
2.检查web.xml中的配置。
4. InvocationTargetException
1.前端 : url拼接get方式拼接多个参数时需 特别注意:url地址中不能有空格
2.后端: 反射调用方法失败
可能原因:
1.参数传递错误
5.tomcat启动后提示找不到文件,重复后正常,频繁出现该现象
奇怪问题: 电脑重启, idea清缓存、重置artifacts正常。
6.Maven兼容性问题
3.6.2以上版本存在兼容性问题,避免冲突,使用3.6.1版本
配置homedirctor 和 setteing.xml
7.jstl标签导入异常相关
1.导入jstl标签需同步导入standar标签
2.http://java.sun.com/jstl/core使用于JSTL1.0,http://java.sun.com/jsp/jstl/core,uri发生更改的原因是jstl1.1起就集成了js2.0的一部分,以便在普通的jsp中共享\重用EL逻辑
3.Servlet2.5 使用JSTL1.2,Servlet2.4使用JSTL1.1
8.xml中配置第三方bean中出现异常,表现为无法正常提示
1.检查类名是否一致(建议源码复制),
2.Project Structure-Libraries中检查依赖是否在output root中存在
3.IDEA自动提示异常,关闭重进即可
9.Element 'beans' cannot have character [children], because the type's content type is element-only.
beans标签中不能含有子标签,xml配置文件中不含有其它标点符号,检查是否误输入标点符号
10.java找不到或无法加载主类
1.检查项目结构是否正常
2.new一个新的project,里面测试正常,基本可以排除path环境变量相关
3.清缓存,进行重新编译尝试电脑重启
4.尝试使用手动编译的方式进行编译,看项目目录下是否可以正常生成class文件
5.软件bug,重建project,项目复制过去
6.检查导入的类中是否有中文
11.jsp页面编译错误
12.项目运行无报错,访问所有页面提示404
注意:清缓存,软件重启
13.FileNotFoundException:Cound not open ServletContext rssource
ServletContext在SpringMVC配置文件中存在,文件未正确引入。
14 mapper对象注入成功,动态代理的方法无法执行。未报错
数据源配置相关,注意:Druid数据源在junit单元测试时,driver未配置,也能获得Connection对象。尝试更换数据源
15.NoSuchBeanDefinitionException: No qualifying bean of type [tmall.dao.CategoryDAO] found for dependency: expected at least 1 bean which qualifies as autowire candidate for this dependency.
CategoryDAO类型的依赖注入失败
15.配置Druid数据源Caused by: java.lang.IllegalStateException: Cannot convert value of type [java.lang.String] to required type [java.sql.Driver] for property 'driver': no matching editors or conversion strategy found
将driver改为driverClassName即可
16.SpringMVC中文件上传,实体无法进行自动封装
1.实体所在类可以不配置在类中
2.form表单项input类型为file
3.form提交方式为post
4.form的enctype属性是多部分表单形式
5.检查name名是否和属性名保持一致
6.检查写入的文件位置,以自增长的id当作命名时,检查mapper中是否有keyProperty和useGeneratedKyes
7.检查是否将CommonsMultipartResolver配置到Bean中
<bean id="multipartResolver" class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<!--当出现问题时,下方的属性可以尝试进行注释-->
<!--上传文件总大小-->
<property name="maxUploadSize" value="500000"/>
<!--最大单个上传文件大小-->
<property name="maxUploadSizePerFile" value="500000"/>
<!--文件编码-->
<property name="defaultEncoding" value="UTF-8"/>
</bean>
8.验证相关:
1.uploadedImageFile.getImage()不为null,代表可以正常接受上传的图片
2.有图片的宽高等信息表示上传无误会
3.ImageIO.write方法为true,代表可以正常写入
17.SqlSesion was not registered for synchronizaion because synchronization is not active,Closing non transactional SqlSeesion
1.检查是否可以正常从容器中获取transacationManager对象
2.检查调用mapper对象的service是否使用@Transactional
3.检查是否开启注解驱动
18. NoClassDefFoundError: Cound not initialize MetaObjectUtil
典型问题:编译期正常,运行期问题
注意:
mybatis的最低版本不能低于3.3
版本问题:高版本中移除了该类
19.Maven中jar包导入失败,提示找不到该依赖
检查maven的配置路径和conf文件目录
20. Non-parseable POM , unexpected markup <!d (position: START_DOCUMENT seen \n<!d... @2:4)
maven引入的pom打开后是html格式,删除maven中引入的repositories(远程仓库位置),或进行修该,将导入的错误依赖删除后重新导入即可。
21.SqlSessionFactoryBuild Build SqlSessionFacory提示BuilderException
经典学习问题:通过SqlSessionFactoryBuilder构建SqlSessionFactory失败导致
原因:未传入正确的配置文件,检查路径和文件名,检查核心配置文件内部配置是否有误。
注意:传入的应是核心配置文件
22. SqlSessionFactory获取SqlSession时报空指针异常
检查mybatis核心配置文件中是否含有environments
23.Cause: org.apache.ibatis.builder.BuilderException: Error creating document instance.
原因:mybatis的核心配置节点必须按照顺序来,否则就会报错。
24. marked is not a function
引入第三方Marked包将以Marked输入的内容保存为HTML内容时,提示marked is not a function
考虑引入的第三方库版本过低,更换后问题得到解决。
原先库:https://unpkg.com/marked
更换为:https://cdn.jsdelivr.net/npm/marked/marked.min.js
25.java.lang.NoSuchMethodError: com.baomidou.mybatisplus.core.MybatisConfiguration.getLanguageDriver
经典问题
解决思路:在·mybatis-plus-core中找到MybatisConfiguration,发现内部没有getLanguageDriver方法,故报错
该问题通常是因为jar包冲突导致的,将mybatis升级到高版本(本次更改mybatis3.5.4 mybatis-plus3.1.1后该问题解决)
26. maven工程下报红,依赖加载慢
检查maven中是否已经进行了配置,清缓存重新启动idea
27.org.apache.ibatis.binding.BindingException: Parameter 'type' not found.
原因:1.只写where标签
2.传递mapper参数处有多个参数,没有使用@param标签,解决方法:mapper形参处有1个以上参数时,使用@param注解,名称同name处一致
28 windonw下安装使用kafka提示classpath is empty
下载的应是不包含src的压缩包
29. Whitelabel Error Page SpringBoot中请求页面出现,404问题,找不到该资源&您要找的资源已被删除,已更名或暂时不可用
原因:访问路径,注意:@RestController中配置的是bean的name名称@RequestMapping是,与该错误类似的,接口测试时忘记添加端口号。
30 线程通信相关
使用wait notify notifyall进行线程之间的通信时,需要线程位于同一个同步代码块或同步方法中
线程的状态在运行,长时间无结果输出时,考虑是否出现死锁的情况
31 前后端项目联调相关
1.后端项目访问路径:idea下方server处
2.类上右键可以查看该类被哪个地方使用
3,在vscode中,npm启动后,根据控制台链接访问的前端,不能正常访问后端时,使用浏览器输入地址
4. 根据前端的请求路径查看后端源码中的接口时,idea中双击shift即可,注意下方的链接可能导致无法使用
32. Date类型和数据库中的DateTime
Date类型的时间,可以和数据库中的DateTime时间进行比较
33. junit单元测试报错:Failed to resolve org.junit.platform:junit-platform-launcher:1.x.x
idea版本与junit版本不一致导致,修改junit版本
34 service中调用mapper层中的方法失败
检查类中是否存在语法错误,入若存在语法错误,可导致idea的提示功能失效
35Caused by: org.quartz.SchedulerException: The Scheduler cannot be restarted after shutdown() has been called.
控 制台的报错可能与实际问题无关,可能存在端口占用的情况
解决:
netstat -ano | find "8080" taskkill /PID 1234 /F
36. com.alibaba.druid.sql.parse.ParseException
检查mapper文件处是否有奇怪问题
37.MysqlTransactionRollbackException
操作过程中的进程未结束导致mysql死锁
38.FlywayException
flyway时一个敏捷工具,用于数据库的移植,只需要建立数据库名称即可,无需导表
39 npm isntall时依赖安装失败
1.考虑使用镜像
2.删除node_modules和package.json,尝试重现下载依赖
40.Maven依赖问题
清除本地mavne缓存方法
40.Mybatis提示绑定异常
通常考虑以下:
1.xml中的namespace 未绑定接口的全路径
2.xml中的sql id未绑定接口名称
3.sql语句的返回值
4.xml的扫描路径配置 ,注意只有一个扫描路径时,classpath前请勿加 -,否则会提示异常