Idea访问servlet404问题(java学习日志)

分类专栏:
Java学习日志

文章标签:
Java自学
Java
原创

**

java学习日志——Idea访问servlet404问题

** 最近学了servlet后开始尝试自己部署项目,无论是eclipse还是idea我都试过。但一路上的坎坷只有自己清楚。其中部署项目时最心酸也是困扰我最久的给servlet发送请求时出现404的问题。 可能你把网上的方法试了遍,可依旧没解决你的问题。无论是注解配置(当然也可以是xml配置)还是服务器部署上都没什么问题,但就是出现404(很不幸,我就是那个人)。经过我不断尝试,最终发现了问题所在。以下方案可以给你一种新的思路: 在这里插入图片描述

你也许会很奇怪,明明我注解配置好了,各项检查(包括各种配置文件)都没有任何问题,可是就是会报404,就像下图: 在这里插入图片描述 作为自学者的我遇到这情况也是相当的崩溃。查互联网,没有得到我想要的答案;问老师同学,由于我是超前学习(大一就开始学习java),根本无人可问(都是别人来问我的......)。那时候可谓是叫天天不灵,叫地地不应。 几天后我尝试创建一个新的项目,开始部署,随后发现servlet居然能访问了,然后我开始对比,注意到了访问路径的不同。 在这里插入图片描述 虽然是500,但至少是访问到了。然后我开始关注到application context这个选项 在这里插入图片描述 这个设置默认为”/”,然后我开始上网查资料发现这个跟访问路径有关。 要解释这个application context,就要谈谈eclipse(毕竟原本用的eclipse)。 eclipse访问项目的路径一般localhost:8080/projectName, 当把IDE换成idea以后,访问路径一般情况下就变localhost:8080,路径没有了后面的项目名。tomcat在发布项目的时候不考虑用虚拟路径的话,一般都是把项目放在webapps里面,这个时候具体放置的位置就会影响访问路径了。如果是直接放在webapps目录下,那么访问路径就是和eclipse相同的访问路径了,但是这时候如果把项目放在tomcat的webapps里的root文件夹下,那么这个时候这个项目就成为了tomcat的默认项目,直接用localhost:8080就可以访问,安装tomcat时检查tomcat是否正常安装出现的项目其实就是root。   localhost:8080/projectName或者是localhost:8080就是我们平常所说的应用上下文,项目中的路径名都是相对于这个应用上下文来说的。在idea下开发的时候,有时候我们可能需要让访问路径带上项目名,但是idea默认是为每个项目单独配置tomcat的,eclipse是把项目统一放到某个配置好的tomcat中,所以默认配置的访问路径就出现了差别。如何将idea的应用上下文路径也带上项目名呢? 其实这个application context就是idea默认的上下文,要想让idea的应用上下文改变,这时候将这个application context改成你需要的项目名就行了,改完后如下 在这里插入图片描述 重启服务器(这个配置只有重启才会更改) 这时候如果访问这个路径就会 在这里插入图片描述 在这里插入图片描述 哈哈,成功了!!!! 问题就出在发送的请求和项目部署的位置不一致上面。 总结一下,我犯这次错误的原因就是我拿eclipse的思维去在idea上部署项目,而实际上两者的部署方式是由很大区别的。至于两者的区别,在这里就不多赘述了,感兴趣的可以去搜相关资料了解一下。 希望本文对你有所帮助。

  ————————————————————————

记录点滴,乐于分享,转载请注明出处

以梦为马,不负人生韶华,我们追梦在路上!

愿与君共勉!

  • 作者:金昊霖
  • 发表时间:2020-7-04
  • 版权声明:自由转载-非商用-非衍生-保留署名(创意共享3.0许可证)
  • 评论

    留言