项目运行常见问题

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前请勿加 -,否则会提示异常 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值