IDEA启动后控制台不报错,但是页面访问404

这种情况多为导入的SSM项目,Springboot项目较少出现这种情况


项目场景:

提示:idea直接导入项目,路径错误:
控制台页面:
在这里插入图片描述

日志页面:

浏览器页面:
在这里插入图片描述

问题描述:

打开一个项目发现404报错,我觉得不是路径错了就是单词写错了

但是咱们跑代码都是写得相对路径
后来经过一位大佬的指点,他告诉我:找到 controller层写首页的位置,试试那个方法
我不敢说恍然大悟,只是突然觉得好像自己傻了 😔
然后我就根据大佬的指点去controller里面找登录的代码:
在这里插入图片描述

	@RequestMapping(value="/login",method=RequestMethod.GET)
	public String login(Model model) {
		model.addAttribute(new Admin());
		return "login";
	}

然后在login.jsp中找到返回首页的代码:
在这里插入图片描述

<div id="btn">
	<a  href="#" class="easyui-linkbutton">登录</a>
	<input type="button" name="Button" value="返回首页"
		   onclick=window.location.href="index.jsp">
</div>

然后我在idea里面设置的路径是:
在这里插入图片描述
所以最后两个地址分别是:
http://localhost:8080/bus_ssm/login.jsp#
http://localhost:8080/bus_ssm/index.jsp#

原因分析:

虽然一开始写对了,但我感觉没跑通的原因很有可能是项目其他地方没配置好,但我后来打开该项目的时候并没有配置其他地方,至于到底是哪的问题,还需要我多一些项目看下

根据这个项目明白路径的重要性,请求路径分为绝对路径和相对路径,但项目运行需要相对路径

另外就是看一下自己进的包是不是对的
你进的是①号包还是②号包?
在这里插入图片描述


绝对路径

绝对路径是目标文件在电脑硬盘上的真实路径

例:我项目中的index.jsp路径就是:【E:\桌面\公交车查询系统的设计与实现\bus_ssm\WebContent\index.jsp】
在这里插入图片描述

绝对路径是从系统盘符开始写,一直写到文件名称并包括后缀名
目录或文件名称之间用捺斜杠 \ 分开

绝对路径可以右键点击文件选择【Copy Path/Reference…】
在这里插入图片描述

也可以用传统的方法在电脑中找到这个文件,在上方复制路径或者右键文件属性,并把文件名包括后缀复制进去
在这里插入图片描述在这里插入图片描述

相对路径

相对路径是相对于当前工作目录或参考点目录的路径。它不包含完整的从文件系统根目录开始的路径信息
在Web应用中,相对路径又具有特殊的含义,比如在Servlet中相对路径的几个写法规则
/ 】表示根目录
./ 】表示当前文件所在的目录
. ./ 】表示当前文件所在的上层目录

在Java应用程序中,如果要从程序运行时的工作目录开始计算文件路径,则相对路径可能如:src/main/resources/config.properties,其中假设配置文件相对于程序启动时的工作目录下的src/main/resources路径。

例如,在Web应用内引用一个资源文件,可能会使用相对路径:./images/logo.png../css/style.css

根据目标文件位置我们可以在斜杠后面加上上下层目录的名称或文件名称(带后缀名)

//采用${pageContext.request.contextPath}的写法保障了从根开始找起,以后无论把index.jsp拖到哪,都是从根开始找
<form action="${pageContext.request.contextPath}/index" method="post">

相对路径在写的时候会有以 “/” 开头和不以 “/” 开头的写法

// 以 "/" 开头的相对路径:
<a href="/hello/index.html">链接1</a>  

// 不以 "/" 开头的相对路径:
<a href="index.html">链接1</a> 

在Java项目中,通常会写在controller包中

css文件或style标签内引用的图片路径,只允许使用相对路径。


总结

绝对路径是目标文件在电脑硬盘上的真实路径

相对路径是指目标文件相对于当前文件的路径
不知道路径前提先把环境配置好,然后再去看controller包里面首页是怎么写的

不同操作系统使用的斜杠不同(Linux系统是/,Window系统是\)

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

二哈喇子!

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值