gpt4 book ai didi

java - 什么时候在 Spring 中使用 ModelAndView 和 Model?

转载 作者:IT老高 更新时间:2023-10-28 13:02:39 26 4
gpt4 key购买 nike

这对于 Spring 专家来说可能听起来很愚蠢,但我不得不问:
您如何决定何时使用 ModelAndView 以及何时使用 Model

毕竟我研究过我找到的最佳答案是this one .它已经提到 ModelAndView 是一种旧方式,而返回 StringModelSpring 中的一种新方式>。

我的问题是,既然我们手头有 Model,我们应该弃用旧的 ModelAndView 吗?或者有什么情况需要用到ModelAndView

另外,有谁知道为什么必须将 ModelAndView 更改为 ModelString 值作为 View,有什么好处?

最佳答案

我总是使用 Controller 方法返回 ModelAndView 的方法。仅仅是因为它倾向于使 Controller 方法更加简洁。方法参数现在是严格的 input 参数。并且所有output相关数据都包含在方法返回的对象中。

ModelAndView 风格似乎与不喜欢将输入参数更新为方法的人产生共鸣。坚持认为这会构成副作用,一种危险的模式,因为您无法可靠地预测该方法将要做什么 - 它可以在返回的对象中返回数据,或者它可以更新任何输入参数中的任何内容。

所以有些人还是会继续偏爱ModelAndView

Model 作为方法参数并返回字符串作为 View 名称的新样式。似乎来自一种稍微不同的设计方法。在这里,模型对象被认为是传递给多个处理程序的事件或项目,然后返回到呈现它们的 View 。它提醒我在 AWT/Swing 世界中是如何处理事件的。该模型与多个处理程序可以构建在 Model 对象之上的方法更加一致,直到它到达一个 View 。

因此,归根结底,似乎没有明确的理由来批评或提倡这两种方法。您应该使用与您的整体设计理念更一致的风格。

希望这会有所帮助。

关于java - 什么时候在 Spring 中使用 ModelAndView 和 Model?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16951609/

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