视频8分钟的时候有疑问

视频8分钟的时候有疑问

这里表单提交的时候为什么不用写绝对路径?相对路径好像也没写对呀,jsp页面不是在.do链接的上一层吗?这里表单提交只写add.do为什么能找到下一层的/department/add.do?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,1、同学的理解是正确的list.do与toAdd.do是同一级。

        2、重定向的路径怎么填写,主要是根据同学要访问的地址来的决定的,没有固定的写法,但是如果直接写一个../toAdd.do,那么如果浏览器是直接从根目录开始识别,../上一级目录,这样地址就会出现异常。        

        3、填写全路径也是能正确跳转的,但是注意要在地址前加上 / ,表示绝对路径,从当前项目的根目录开始访问,否则可能出现路径叠加的情况,比如:

http://localhost:8080/sm/department/department/list.do

出现两个叠加的department,导致路径不正确。

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

好帮手慕小班 2020-02-22 16:24:29

同学你好,在地址中,如果地址前面加 / 就是绝对路径,不加就是相对路径,查看案例,这里使用的是相对路径,从当前页面的地址跳转,所以会在当前页面的地址上跳转。比如:

查询所有部门的路径是:http://localhost:8080/sm/department/list.do 进入department_list.jsp中

    此时在查询部门列表的页面中需要跳转至添加的具体的页面,要跳转的地址是相对于以上路径进行跳转的。此时department_list.jsp和toAdd.do是同一级。最后的地址会变为:http://localhost:8080/sm/department/toAdd.do

如果我的回答解决了你的疑惑,请采纳。祝:学习愉快~

  • 提问者 广东田柾国 #1
    访问连接是http://localhost:8080/sm/department/list.do,在departmentController中使用请求转发request.getDispatcher("../department_list.jsp"); 这时候浏览器显示地址依然是http://localhost:8080/sm/department/list.do,所以此时虽然在jsp页面中,但是服务器依旧认为当前是http://localhost:8080/sm/department/list.do,点击跳转的时候toAdd.do相对于该连接就处在同一级,直接跳转到http://localhost:8080/sm/department/toAdd.do。是这样子理解的吗? 如果是通过响应重定向到达的jsp页面,jsp页面上的跳转连接就得改成../toAdd.do,这样理解是对的吗? 还有表单上填写全路径也是能正确跳转的吧?
    2020-02-22 17:25:19
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师