打开新视图,是否会在控制器中发生?

时间:2013-12-10 14:24:38

标签: java model-view-controller

我习惯于在每个事件/请求中发生这种情况的Web MVC:

  1. 点击链接以获取site.com/login
  2. 路由器将确定用户的去向
  3. Dispatcher将加载Login控制器
  4. 我正在尝试使用Java进行MVC,并且我对事物的流程略有不同。

    用户单击按钮打开新窗口,控制器捕获此事件。我们目前在控制器中,所以这是你处置/隐藏当前窗口并加载新控制器的地方,而新控制器又将显示新请求的窗口?

    这是我能想到的唯一的地方,还是有更好的方法来实现这一目标?对我来说似乎没什么关系。

    任何帮助都会非常感谢。

1 个答案:

答案 0 :(得分:0)

登录用例与常规控制器不同。任何未经身份验证的用户尝试访问安全页面时都应调用登录。因此,对于登录控制器,您可以传递用户尝试访问的页面的URL,因此登录控制器可以在处理登录后重定向到它。

对于常规控制器,根据它们的作用,您可以在处理请求的同一控制器中返回所有模型和新页面的视图(对于GET请求尤其如此)。对于帖子,您可以返回模型或重定向。