在Spring MVC中提交后重定向到同一搜索页面

在Spring MVC中提交后重定向到同一搜索页面,spring,spring-mvc,Spring,Spring Mvc,我有一个场景,用户可以搜索帐户详细信息,搜索结果将以带有页码(1,2..)的表格格式显示。 在结果页面上,用户可以通过分页来回遍历,可以更改任何页面上的帐户详细信息,并可以提交相同的信息。 到现在为止一切都很好。现在我要做的是将用户转发到同一搜索页面()上,并使用提交前使用的相同搜索条件 例如:用户搜索名为“abc”的所有人员的帐户详细信息,表中有26行,因此系统将以10(第1页)-10(第2页)-6(第3页)的形式显示结果 现在,用户转到第2页并更改一些值,然后在提交后单击提交。用户应使用相同

我有一个场景,用户可以搜索帐户详细信息,搜索结果将以带有页码(1,2..)的表格格式显示。 在结果页面上,用户可以通过分页来回遍历,可以更改任何页面上的帐户详细信息,并可以提交相同的信息。 到现在为止一切都很好。现在我要做的是将用户转发到同一搜索页面()上,并使用提交前使用的相同搜索条件

例如:用户搜索名为“abc”的所有人员的帐户详细信息,表中有26行,因此系统将以10(第1页)-10(第2页)-6(第3页)的形式显示结果

现在,用户转到第2页并更改一些值,然后在提交后单击提交。用户应使用相同的条件(名称“abc”)转到第2页

请提供一些想法

谢谢

我用MVC拦截器解决了一个类似(不一样)的场景

对我来说,问题是,我有表格。如果用户在表单中输入了一些内容,并且请求被接受,那么他通常会被重定向到相应的显示页面。(休息模式)。但是,如果从特殊页面“调用”from,则有些表单的行为应该有所不同

示例:因此,如果用户转到“a”页,从那里到带有表单的“F”页,输入值并提交,然后(在服务器中执行相应操作后)重定向到“S”页。但是如果用户从“B”页开始,然后转到表单页面“F”,提交表单,那么他应该被重定向到“B”

它是这样工作的: 我有一个特殊的请求参数
RETURN\u ACTIVATE
此参数包含一个URL。MVC侦听器检测当前请求是否具有此参数。(为了便于使用,MVC拦截器还检查
RETURN\u ACTIVATE
是否退出,但为空,然后用HTTP referer替换其值)

  • 现在,如果MVC拦截器检测到当前请求具有此
    RETURN\u ACTIVATE
    参数,并且web控制器响应是重定向,那么它将用
    RETURN\u ACTIVATE
    参数中的重定向url替换重定向url
  • 但是,如果web控制器响应是一个普通形式的视图,那么拦截器只向模型添加一个名为
    RETURN\u ACTIVATE
    的值。其值是
    返回\u激活
    参数的值
在我的每个表单中,如果模型包含值
RETURN\u ACTIVATE
(隐藏参数的值当然是来自模型的值),我会添加一个名为
RETURN\u ACTIVATE
的隐藏参数

因此,在最后,我需要做的唯一一件事就是运行完整的东西,就是在“B”页的链接中添加一个没有值的参数,用户使用该参数访问“F”页
然后MVC拦截器将带有referer URL的参数添加到模型中,因为控制器返回表单的视图。JSP将隐藏值
添加到表单中。 当用户提交表单,控制器响应重定向到“s”时,MVC拦截器将“c”更改为“b”

所以我的解决方案有点复杂,因为用例更复杂,但我希望它能给你一些想法。

我用MVC拦截器解决了一个类似(不同)的场景

对我来说,问题是,我有表格。如果用户在表单中输入了一些内容,并且请求被接受,那么他通常会被重定向到相应的显示页面。(休息模式)。但是,如果从特殊页面“调用”from,则有些表单的行为应该有所不同

示例:因此,如果用户转到“a”页,从那里到带有表单的“F”页,输入值并提交,然后(在服务器中执行相应操作后)重定向到“S”页。但是如果用户从“B”页开始,然后转到表单页面“F”,提交表单,那么他应该被重定向到“B”

它是这样工作的: 我有一个特殊的请求参数
RETURN\u ACTIVATE
此参数包含一个URL。MVC侦听器检测当前请求是否具有此参数。(为了便于使用,MVC拦截器还检查
RETURN\u ACTIVATE
是否退出,但为空,然后用HTTP referer替换其值)

  • 现在,如果MVC拦截器检测到当前请求具有此
    RETURN\u ACTIVATE
    参数,并且web控制器响应是重定向,那么它将用
    RETURN\u ACTIVATE
    参数中的重定向url替换重定向url
  • 但是,如果web控制器响应是一个普通形式的视图,那么拦截器只向模型添加一个名为
    RETURN\u ACTIVATE
    的值。其值是
    返回\u激活
    参数的值
在我的每个表单中,如果模型包含值
RETURN\u ACTIVATE
(隐藏参数的值当然是来自模型的值),我会添加一个名为
RETURN\u ACTIVATE
的隐藏参数

因此,在最后,我需要做的唯一一件事就是运行完整的东西,就是在“B”页的链接中添加一个没有值的参数,用户使用该参数访问“F”页
然后MVC拦截器将带有referer URL的参数添加到模型中,因为控制器返回表单的视图。JSP将隐藏值
添加到表单中。 当用户提交表单,控制器响应重定向到“s”时,MVC拦截器将“c”更改为“b”

所以我的解决方案有点复杂,因为用例更复杂,但我希望它能给你一些想法