gpt4 book ai didi

spring-mvc - 从 Spring Web MVC Controller 返回带有查询参数的 View 字符串?

转载 作者:行者123 更新时间:2023-12-05 05:24:46 24 4
gpt4 key购买 nike

这是我想要的效果,但我不知道语法:

@RequestMapping(method = RequestMethod.GET, params = { "param1", "param2" }, produces = "text/html")
public String createForm(Model uiModel, @RequestParam("param1") String param1, @RequestParam("param2") String param2, HttpServletRequest request, HttpServletResponse response) throws IOException {
populateEditForm(uiModel, new Object());
return "fubar/update?param1=" + param1+ "&param2=" + param2;

错误是

javax.servlet.ServletException: Could not resolve view with name 'fubar/update?param1=...

有没有办法将查询参数附加到返回字符串?

谢谢!

最佳答案

查看您在问题下方添加的评论,看起来您正试图转发到一个 View (例如:JSP)。所以,是的,那里没有重定向。您可以在 HTML 表单上设置这些参数(就像您所做的那样)。但是您也可以通过将它们添加到模型来设置这些值。因此,在这种情况下,您绝对应该使用第一个 ModelAndView 构造函数参数来指定要转发到的 View [没有“重定向”部分],并使用第二个参数来传递模型参数。

这是在将旧的 Struts 应用程序转换为 Spring 应用程序时经常发生的事情。在 struts 中,您“看起来”可以以有趣的方式添加请求/URL 参数。实际上,一旦收到入站 HTTP 请求,向 URL 参数添加内容就没有意义了。您只想向“请求处理”逻辑添加新值(向模型添加参数)。如果您确实需要向 URL 添加参数,则只有在您想要创建新请求(主要是重定向到另一个页面)时才需要这样做。在这种情况下,另一个答案是在正确的路径上,但您想将 URL 参数添加到“重定向:”字符串(在 ModelAndView 构造函数的第一个参数中):

return new ModelAndView("redirect:fubar/update?param1=" + param1+ "&param2=" + param2);

当然,如果您想重定向 (HTTP 302) 到另一个页面。

关于spring-mvc - 从 Spring Web MVC Controller 返回带有查询参数的 View 字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33700720/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com