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

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Idea访问servlet404问题(java学习日志)

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

**

最近学了servlet后开始尝试自己部署项目,无论是eclipse还是idea我都试过。但一路上的坎坷只有自己清楚。其中部署项目时最心酸也是困扰我最久的给servlet发送请求时出现404的问题。

可能你把网上的方法试了遍,可依旧没解决你的问题。无论是注解配置(当然也可以是xml配置)还是服务器部署上都没什么问题,但就是出现404(很不幸,我就是那个人)。经过我不断尝试,最终发现了问题所在。以下方案可以给你一种新的思路:


w2.png

你也许会很奇怪,明明我注解配置好了,各项检查(包括各种配置文件)都没有任何问题,可是就是会报404,就像下图:

w1.png

作为自学者的我遇到这情况也是相当的崩溃。查互联网,没有得到我想要的答案;问老师同学,由于我是超前学习(大一就开始学习java),根本无人可问(都是别人来问我的…)。那时候可谓是叫天天不灵,叫地地不应。

几天后我尝试创建一个新的项目,开始部署,随后发现servlet居然能访问了,然后我开始对比,注意到了访问路径的不同。

q5.png

虽然是500,但至少是访问到了。然后我开始关注到application context这个选项

q4.png

这个设置默认为”/”,然后我开始上网查资料发现这个跟访问路径有关。

要解释这个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改成你需要的项目名就行了,改完后如下

q3.png

重启服务器(这个配置只有重启才会更改)

这时候如果访问这个路径就会

q2.png

q1.png

哈哈,成功了!!!!

问题就出在发送的请求和项目部署的位置不一致上面。

总结一下,我犯这次错误的原因就是我拿eclipse的思维去在idea上部署项目,而实际上两者的部署方式是由很大区别的。至于两者的区别,在这里就不多赘述了,感兴趣的可以去搜相关资料了解一下。

希望本文对你有所帮助。

相关实践学习
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
【涂鸦即艺术】基于云应用开发平台CAP部署AI实时生图绘板
相关文章
|
1月前
|
存储 监控 算法
防止员工泄密软件中文件访问日志管理的 Go 语言 B + 树算法
B+树凭借高效范围查询与稳定插入删除性能,为防止员工泄密软件提供高响应、可追溯的日志管理方案,显著提升海量文件操作日志的存储与检索效率。
84 2
|
6月前
|
IDE Java 开发工具
【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
IntelliJ IDEA创建Java项目的图文详细步骤,手把手带你创建Java项目
1132 10
【Java基础-环境搭建-创建项目】IntelliJ IDEA创建Java项目的详细步骤
|
8月前
|
Java 应用服务中间件 API
Servlet开发流程 (里面有Idea项目添加Tomcat依赖详细教程)
本文详细介绍了Servlet的开发流程,包括在IntelliJ IDEA中添加Tomcat依赖的详细教程。通过上述步骤,开发者可以快速搭建并运行一个基本的Servlet应用,理解并掌握Servlet的开发流程对于Java Web开发至关重要。希望本文能够帮助开发者顺利进行Servlet开发,提高工作效率。
940 78
|
Java
轻松上手Java字节码编辑:IDEA插件VisualClassBytes全方位解析
本插件VisualClassBytes可修改class字节码,包括class信息、字段信息、内部类,常量池和方法等。
631 6
|
7月前
|
IDE Java 开发工具
JetBrains IntelliJ IDEA 2025.1 发布 - 领先的 Java 和 Kotlin IDE
JetBrains IntelliJ IDEA 2025.1 (macOS, Linux, Windows) - 领先的 Java 和 Kotlin IDE
513 2
|
7月前
|
调度
FreeRTOS学习日志 - 第一天
这就是我的FreeRTOS学习日志 - 第一天的内容,明天继续探索这片实时操作系统的广阔海洋。+
150 12
|
8月前
|
缓存 Java 编译器
|
8月前
|
域名解析 应用服务中间件 网络安全
阿里云个人博客外网访问中断应急指南:从安全组到日志的七步排查法
1. 检查安全组配置:确认阿里云安全组已开放HTTP/HTTPS端口,添加规则允许目标端口(如80/443),授权对象设为`0.0.0.0/0`。 2. 本地防火墙设置:确保服务器防火墙未阻止外部流量,Windows启用入站规则,Linux检查iptables或临时关闭防火墙测试。 3. 验证Web服务状态:检查Apache/Nginx/IIS是否运行并监听所有IP,使用命令行工具确认监听状态。 4. 测试网络连通性:使用外部工具和内网工具测试服务器端口是否开放,排除本地可访问但外网不可的问题。 5. 排查DNS解析:确认域名A记录指向正确公网IP,使用`ping/nslookup`验证解析正
317 2
|
10月前
|
前端开发 Java 开发工具
Git使用教程-将idea本地Java等文件配置到gitte上【保姆级教程】
本内容详细介绍了使用Git进行版本控制的全过程,涵盖从本地仓库创建到远程仓库配置,以及最终推送代码至远程仓库的步骤。
655 0
|
11月前
|
监控 应用服务中间件 定位技术
要统计Nginx的客户端IP,可以通过分析Nginx的访问日志文件来实现
要统计Nginx的客户端IP,可以通过分析Nginx的访问日志文件来实现
999 3
下一篇
oss云网关配置