弹簧MVC控制器:“向前返回”,“返回重定向”和“返回jsp文件”有什么区别
2022-09-01 20:42:23
我不明白我应该使用什么。我有两页 - 介绍.jsp(1)和书籍列表.jsp(2)。对于每个页面,我创建了一个控制器类。第一页有按钮,打开第二页:
<form method="GET" action="/request-list">
<input type="submit"/>
</form>
第一个问题是:我不确定这个按钮的正确性。它工作得很好,但是按下此按钮后我有问号。
第二个问题是:当我按下该按钮时,调用具有下一个注释的方法(第二页的控制器):
@RequestMapping(value = "/books")
@Controller
public class BooksListController {
@RequestMapping
public String booksList() {
return "jsp/books/booksList";
}
}
我应该通过此方法返回什么?换句话说,我怎样才能从第一页跳到第二页?
return "redirect:/books"; returns http://localhost:8080/books?
return "jsp/books/booksList"; returns http://localhost:8080/request-list?
return "forward:/books"; returns http://localhost:8080/request-list?
我看到结果是一样的:所有这些字符串都给了我相同的页面(第2页被打开了)。在哪些情况下我应该使用“重定向”,“转发”,“页面.jsp”?
我也读过帖子/重定向/获取文章。在POST方法处理后,我必须使用“重定向”吗?