使用spring boot,我有一个时间表页面。
您可以单击一个正方形,这会打开一个小表格,您可以用它在时间表中添加或删除班级对象(保存在数据库中)。
我的问题是,当您单击“添加”(或删除)时,尽管它成功地从时间表中添加/删除了该对象,但您必须刷新页面才能看到在时间表上添加/删除了该类。从用户的角度单击添加时,似乎没有任何反应(直到他们手动刷新页面)。
post方法重定向回到时间表页面get。我尝试将其重定向到另一个mini get方法,然后将其重定向回原始时间表页面。但从浏览器的角度来看,它似乎仍然没有发生任何事情-只是停留在原来的问题所在的同一页上。很想听听可能的解决方案,谢谢!
编辑:这是我的get和post方法的示例:
@GetMapping("/timetable/{id}/{semId}")//This method displays timetable.
public String timetable(@PathVariable(value = "id") String id, Model model,
@PathVariable(value = "semId") String semId) {
//code..
model.addAttribute("x", x);
return "timetable";
}
@PostMapping("/timetable/{id}/{semId}")
public String timetablePost(@ModelAttribute TimetableClassDto dto, @PathVariable(value = "id") String id,
Model model, @PathVariable(value = "semId") String semId) {
//code..
return "redirect://timetable/00/" + semId;
}
答案 0 :(得分:1)
您应该在重定向中有两个//吗?我的代码中有类似内容,并且工作正常。但是,我先创建一个URL,然后返回它。另外,请确保您的get映射根据从重定向获取的新参数正确填充对象。 使用以下内容:
??
String url = "redirect://timetable/00/" + semId;
return url;