Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Spring mvc Spring mvc url问题_Spring Mvc - Fatal编程技术网

Spring mvc Spring mvc url问题

Spring mvc Spring mvc url问题,spring-mvc,Spring Mvc,我使用的是Spring mvc,我遇到了以下问题: 我的控制器中的每个方法都返回一个jsp名称,至于表示,一切都很好。问题在于链接(HREF)。窗口的链接不会改变,相对链接会将我带到不需要的地方 例如(不是真实的): 我有一个可以通过以下方式访问的视图:/test1/{id} 以及我通过/test1/{id}/update post方法保存并返回第一个视图(返回查看屏幕)。 演示还可以,我可以看到更新的数据。但是窗口url没有更改,如果我再次尝试更新,我将被发送到以下位置:/test1/{id}

我使用的是Spring mvc,我遇到了以下问题:

我的控制器中的每个方法都返回一个jsp名称,至于表示,一切都很好。问题在于链接(HREF)。窗口的链接不会改变,相对链接会将我带到不需要的地方

例如(不是真实的):

我有一个可以通过以下方式访问的视图:
/test1/{id}
以及我通过
/test1/{id}/update

post方法保存并返回第一个视图(返回查看屏幕)。 演示还可以,我可以看到更新的数据。但是窗口url没有更改,如果我再次尝试更新,我将被发送到以下位置:
/test1/{id}/update/update。


如何解决此问题?

简短回答:使用重定向

在持续执行某些操作时,必须使用重定向。我猜您在发布到这些url时正在修改数据。所以你绝对需要使用重定向。这解决了用户在进行更新后刷新页面时出现的问题。您是否注意到浏览器关于重新发送数据的警告

示例代码:

@RequestMapping("/test1/{id}/update")
public ModelAndView update(@PathVariable("id") String id){
    // make an update
    return new ModelAndView("redirect:/test1/" + id);
}

这将向用户发送301或302 HTTP状态。并且浏览器将立即跟随重定向url。请注意,您不应使用视图名称,而应使用url。

简短回答:使用重定向

在持续执行某些操作时,必须使用重定向。我猜您在发布到这些url时正在修改数据。所以你绝对需要使用重定向。这解决了用户在进行更新后刷新页面时出现的问题。您是否注意到浏览器关于重新发送数据的警告

示例代码:

@RequestMapping("/test1/{id}/update")
public ModelAndView update(@PathVariable("id") String id){
    // make an update
    return new ModelAndView("redirect:/test1/" + id);
}
这将向用户发送301或302 HTTP状态。并且浏览器将立即跟随重定向url。请注意,您不应使用视图名称,而应使用url