问题提出
如图,新手学习SSM很常见的错误。博主这里是访问一个从数据库中提取数据列表的API时,出现的错误
下面是博主Project的SSM体系目录结构
![](https://img-blog.csdnimg.cn/20191030203054946.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzczNTM0OA==,size_16,color_FFFFFF,t_70)
原因分析
服务器500错误原因多种多样,网上已有详细总结,这里就不再赘述。
这篇文章中,博主想列举其中一种可能的情况,跟着课程一步步敲或许还不会遇到,但是如果自己动手从0开始搭建,遇到的概率还是很大的。
博主看到了抛出的Exception中的这句话:
nested exception is org.springframework.core.NestedIOException: Failed to parse mapping resource
Failed to parse mapping resource,可能是某种缺失造成的,但是既然与mapping(映射)有关系,那直接去翻翻mapper部分的源码呗(哈哈哈,其实博主是后知后觉,遇到500错误也是翻了好久的Project Setting中的Modules和Artifacts)
下面是出现了问题的MyBatis映射mapper文件:
![](https://img-blog.csdnimg.cn/20191030202523258.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzczNTM0OA==,size_16,color_FFFFFF,t_70)
解决问题
改正之后:
![](https://img-blog.csdnimg.cn/20191030202744372.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzczNTM0OA==,size_16,color_FFFFFF,t_70)
这样,MyBatis就知道queryCommodityList()这个方法来自于哪里了
再次启动服务器,访问对应API:
![](https://img-blog.csdnimg.cn/20191030204058318.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80MzczNTM0OA==,size_16,color_FFFFFF,t_70)