ssm运行报错:no mapping for GET / (已解决)

错误截图:
在这里插入图片描述

不知道动了什么地方,本来还能运行的项目突然报出这个错误,经过整理,将可能导致的原因总结如下:

原因一:在 web.xml 中对 springDispatcherServlet 的配置出错

主要是前端控制器的拦截路径错把“/”写成了“/*”,

在这里插入图片描述

原因二:未给控制器层添加注解@Controller

未添加注解,springMVC无法扫描到这个类
在这里插入图片描述

原因三:访问的页面(如index.html)位置错误,未放于webapp文件夹下

在这里插入图片描述

原因四:静态资源访问的问题

这也是导致我出现这个问题的原因,解决方法是在springMvc的配置文件中添加上mvc:default-servlet-handler/以及mvc:annotation-driven/
在这里插入图片描述

原因五:配置文件未被扫描

突然又出现了这个错误,这次我突然想到,项目运行时,是跑的target文件里面的资源,会不会根本就不是spring或springMVC的配置文件出错,而是这些文件根本就没有被扫描到!结果看还真的是

在这里插入图片描述
在pom.xml文件中添加上如下配置

<resources>
            <resource>
                <directory>src/main/java</directory>
                <!--所在的目录-->
                <includes>
                    <!--包括目录下的.properties,.xml 文件都会被扫描到-->
                    <include>**/*.properties</include>
                    <include>**/*.xml</include>
                </includes>
                <filtering>false</filtering>
            </resource>
            <resource>
                <directory>src/main/resources</directory>
                <includes>
                    <include>**/*.*</include>
                </includes>
            </resource>
        </resources>

,再次运行target文件中出现了配置文件,项目也可以成功运行。
在这里插入图片描述

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值