0

我有一个 SpringMVC 应用程序,我不确定它是否正常工作。我有一个注册表单,http://localhost:8080/myapp/registration.htm当我单击查询按钮时读取的 url 将应用程序发布到控制器,并且用户被发布到第二页 getList.htm,它显示结果列表但是当发布到第二页时,url 仍然读取http://localhost:8080/myapp/registration.htm

当发布第二页时,假设用户被带回第一页http://localhost:8080/myapp/registration.htm以显示从 getList.htm 中选择的记录(这会显示多条记录)。

当用户被回发到http://localhost:8080/myapp/registration.htmurl 时,读取http://localhost:8080/myapp/getList/1985121244.htm其中 1985121244 是记录号。http://localhost:8080/myapp/registration.htm一旦用户被发布回第一页,是否应该显示 url ?

此外,如果用户在从 getList.htm POST 返回后尝试发布第一页,您将获得 HTTP 400 并且 url 读取http://localhost:8080/myapp/getList/registration.htm。第二页附加到 url,这不是控制器中的适当映射。有人可以解释这里发生了什么以及它是如何修复的。

已编辑

此外,当我第一次进入应用程序时,主菜单是http://localhost:8080/myapp/hello.htm当我单击 aa href 时,我被带到注册页面,但是页面显示但 url 没有改变。当从 hello.htm 页面单击 href 标记时,控制器会请求获取注册页面并使用返回它return new ModelAndView("registration");我看到一些网站说我应该使用 return newModelAndView("redirect:/registration");但是当使用它时我得到了404 Not Found - http://localhost:8080/myapp/registration"。在我发布代码之前我可以看到的任何想法我的代码很多

4

1 回答 1

2

对我来说,您似乎只是在登录后返回视图名称。当然,这不会改变您的网址。不要返回视图名称,而是使用“redirect:/getList.htm”指向您需要的 url。

然后处理 getList.htm 的控制器检查用户是否登录并返回正确的视图名称。

于 2013-03-16T07:30:41.020 回答