解决SSM整合项目报错javax.servlet.ServletException: Servlet.init() for servlet [springmvc] threw exception

  • Post author:
  • Post category:java


第一次整合ssm项目时,难免会遇到一些粗心代码问题,本篇文章记录了整合ssm项目报错javax.servlet.ServletException: Servlet.init() for servlet [springmvc] threw exception时,排除bug的思路过程。


– 项目配置好Tomcat,开启测试后浏览器报错


Type:异常报告

消息:Request processing failed; nested exception is org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.executor.ExecutorException: A query was run and no Result Maps were found for the Mapped Statement ‘com.jack.dao.BookMapper.queryAllBook’. It’s likely that neither a Result Type nor a Result Map was specified.

描述:服务器遇到一个意外的情况,阻止它完成请求。

在这里插入图片描述

在这里插入图片描述



1.此时猜测是后端配置文件有误,导致获取不到相应的bean,回到后端测试代码是否有问题


– 进行测试


&emso; 通过配置文件获取到Service类,在控制台上输出想要展示在前端的内容。

在这里插入图片描述


– 测试报错


在这里插入图片描述


通过代码报错信息发现是因为dao层的类无法正常实现功能



3.检测dao层配置文件与service层配置文件关联是否有问题

通俗来讲是为了检验service类是否能够正常获取到dao的类。通过检查发现dao与service配置文件并没有差错。在往前推,dao的xml配置sql语句检查。



4. 检查dao层xml配置文件的sql语句检查

找到这里我发现了bug来源于在方法上的参数类型,和返回类型的使用失误。导致spring虽然能够获取到dao类,却无法正确执行相应的方法。

在这里插入图片描述



总结:

本次记录主要是记录排除bug逻辑,ssm项目中的配置文件信息量大,容易手误,或者一些粗心失误,导致一些bug的出现,所以可以通过到推的方法,一层一层的找到bug所在。



版权声明:本文为weixin_45797182原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。