Java/Spring 创建新的 ModelAndView,引用发出 get 请求的前一个页面/页面

标签 java spring get-request modelandview

在向先前的网址发出请求后,我在转发时遇到一些问题。

我有一个团队页面 (.../team/teamMembers/{id}),其中列出了团队中的所有团队成员。有一个删除按钮,可以从团队中删除团队成员。发出此请求后,我想再次返回 team/teamMembers/{id} 页面,该页面现已编辑。

我的请求如下所示:

@RequestMapping(value = "/deleteTeam/{id}", method = RequestMethod.GET)
public ModelAndView deleteTeam(@PathVariable Integer id) {
    ModelAndView modelAndView = new ModelAndView("/team/teamMembers/{id}");
    memberService.deleteTeam(id);
    List<Member> members = memberService.getMembers();
    modelAndView.addObject("members", members);
    String message = "Member was successfully deleted from team.";
    modelAndView.addObject("message", message);
    return modelAndView;
}

但是,当然,team/teamMembers/{id} 不起作用,因为 {id} 没有值,并且不是一个好的 URL 字符串。此外,deleteTeam/{id} 中的 id 是memberID,而不是teamID。

如何重定向到发出 getRequest 的页面?

最佳答案

在从团队中删除成员时,您还需要 teamId,因为您将再次重定向 teamMembers 页面。

// Also get teamId while deleting via path variable or as a parameter in controller
// /deleteTeam/{teamId}/{memberId} may be used
// or more user friendly readable path /team/{teamId}/delete/member/{memberId}
return new ModelAndView("redirect:/team/teamMembers/"+ teamId);

这样该方法就会按照您的意愿工作。

关于Java/Spring 创建新的 ModelAndView,引用发出 get 请求的前一个页面/页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41223462/

相关文章:

java - 在 Spring JPA 中保存对象之前触发

java - Spring 存储库和 DATA_FORMAT 与 nativeQuery=false

C++ HTTP GET 请求问题?

java - Android 在从服务器接收时读取 JsonArray 中的不同数据

java - 基于 ContentObserver 的应用程序的短信记录器 : how to create AndroidManifest. xml

java - 尝试使用 JavaMail 通过 Outlook 在 HTML 电子邮件中发送 CSS

java - 使用 java.lang.invoke.MethodHandle 调用私有(private)方法

java - listview回收早了吗?还是 Universal ImageLoader 错误地取消了?还是我的逻辑错了?

java - spring 3 启动的奇怪信息

ssl - 如何从手持设备为 SSL/TLS 建立安全通道?