java学习笔记-springmvc使用遇到的一些问题

本文探讨了在使用SpringMVC时,如何处理路径问题以确保正确跳转和避免404错误。重点介绍了form action路径的处理,以及如何在已有@RequestMapping注解的控制器中进行有效的URL重定向,包括使用相对路径和绝对路径的区别。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Springmvc使用遇到的一些问题

路径

在看课程的时候想实现一个比较好玩的功能,就是能在几个页面之间来回跳转
这需要在jsp表单提交后在代码里返回对应的视图
涉及到一些路径的问题
如果请求的时候@Controller注解下还加了@RequestMapping注解的话,在jsp里还想返回到对应的路径时,form action里的路径在开头一定不能加/
这个在视频里他说是没有影响的,其实是不对的,我试过加了和不加的情况,发现加了/的话,在经过第一次请求回来之后再点击提交就访问不到路径了
在网址上显示的路径也发现了他只显示了从/开始的路径,前面的项目的路径被吃掉了
所以不能加/,不加的话在请求的时候他就会默认你这是相对路径,在你的路径前自己帮你加上了项目的路径再去访问
所以总结就是不加/访问的时候就是访问相对路径,这个可以避免项目路径被吃掉导致在跳转页面的时候访问失败出现404
不过感觉得看项目需求,估计也没有几个页面来回跳的需求吧…

在提一嘴,有关在后台重定向的问题
这个和上面讲的一样,如果你在类的一开始就用了@RequestMapping注解的话,意味着实际上你发送过来的请求前面还有一个父级,所以如果是这个时候你直接redirect:webapp里的jsp网页的话也是无法访问成功的,去看他实际的路径你就知道他变成了相对路径,也就是在你的这个路径签名他自己加了一个你一开始写的类上的那个父级,所以如果你在类上已经加了@RequestMapping的话,在重定向的时候就要先返回到上一级才能到webapp,也即是你的return值应该是redirect:…/xxx.jsp
…/的意思就是返回上一级
如果在路径的一开始就加上/的话,可以理解成初始化了当前的路径,也即是写了/的话意味着在请求的时候默认是在项目名目录后再加上你写的路径
一时间可能难以理解,多试几次就知道了哈哈哈
挫折从学习

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

淳杰

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

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

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

打赏作者

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

抵扣说明:

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

余额充值