Spring MVC 跳转问题

JSP页面:

链接前有“/”:则跳转地址为:服务器根目录+你的链接地址

比如:

当前页面是工程主页目录:http://pc-20160802rdfv:8080/reWebDemo/index.jsp

表单为<form action="/login/userlogin">

则登录后地址为:http://pc-20160802rdfv:8080/login/userlogin

链接前无“/”:则跳转地址为:地址从当前页面所在目录+你的链接地址

比如:

当前页面是工程主页目录:http://pc-20160802rdfv:8080/reWebDemo/index.jsp

表单为<form action="login/userlogin">

则登录后地址为:http://pc-20160802rdfv:8080/reWebDemo/login/userlogin

javascript中一样的道理,但JS若单独放到一个文件中则一般用绝对地址,把工程地址一开始就放入session中保存

Action/Controller后台:

后台跳页面:

一般Spring MVC会配置视图名称解析
我的配置:<bean class="org.springframework.web.servlet.view.InternalResourceViewResolver" p:prefix="/WEB-INF/view/" p:suffix=".jsp" />
这样会使mv.setViewName("demo/loglist")中的链接前有无“/”都不影响

    都会跳转到地址:p:prefix+你set的地址去掉前缀“/”+p:suffix
    当需要跳转到prefix之外的页面时可以用forword和redirect,比如跳转到主页面:mv.setViewName("forward:/index.jsp");

后台跳后台:

由于配置视图名称解析,所以要想后台跳后台只能用forward和redirect
至于两者区别本篇不多陈述,大致就是forword为服务端跳转,地址不可见,参数可共享,redirect反之。                                                                     
还有一种方法是参数中带RedirectAttributes,由于本人没使用过,所以不做解释。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值