具体报错如下:
本人使用的是JDK17+springwebmvc6.0.0,但tomcat是7.0的插件和8.0的本地tomcat,jakarta4.0的依赖下面的包还是javax,所以用jakarta用6.0的,但要注意版本之间的兼容性,如果你导依赖是6.0以上且web.xml或springmvc-config.xml无报错,tomcat7.0的插件报上图的错误,但tomcat8.0,9.0运行后可以看见index.jsp的内容,在地址栏后输入@requestmapping注释里的参数时,且输入的参数一定对的情况下,报404错误。
解决方法:下载tomcat10.0版本并添加到idea中,把项目部署到tomcat10.0下,在运行再在地址栏输入@requestmapping注释里的参数,就可以了。
我在自己解决前看了两个blog,链接是https://stackoverflow.com/questions/77335852/java-lang-classnotfoundexception-javax-servlet-http-httpservlet-in-springmvc
这个链接的的Roman C回答是正确的,但我当时还没理解,又找到了这个链接https://blog.csdn.net/m0_73642416/article/details/137070634,我下了一个tomcat9.0结果还不行,就自己在网上再找,走投无路就又下了tomcat10.0结果就行了。
tomcat8.0和9.0还会在后台报localhost-startstop-1等一串乱码和在地址栏后输入@requestmapping注释里的参数时,且输入的参数一定对的情况下,报404错误,也是这个问题。