分享

关于SpringMVC中的ModelAndView和Model的使用和区别...

 liang1234_ 2020-09-19

        在学习SSM框架中的SpringMVC时常常看到在控制层Controller中有的使用ModelAndView进行数据模型的传输,有的使用Model进行数据模型传输,为何有两种不同度类型进行传输呢?

        最近才自己领悟到看到主要是看在controller类中的方法想要返回给前端页面的数据类型,这里我使用的是jsp视图页面作为前端界面技术。

      一,  若返回类型为ModelAndView类型,需要方法结束时,定义ModelAndView,将model和view分别进行设置,代码方法如下:

其中jsp页面就不给出了,这里以商品的查询为例

主要步骤:

1,首先是创建ModelAndView对象,再调用addObject方法,参数一为该数据命名,参数二为传入前面从数据库中获取到的商品列表

2,再调用setViewName方法设置jsp页面的路径,这里的地址前缀和后缀已经在web.xml文件中定义好了,可直接简写如上。如未有定义可以使用上方以注释的路径进行传入

3,最后返回modelAndView数据

 

二,若方法返回String类型,则要使用Model,表示返回逻辑视图名,真正视图(jsp路径)=前缀+逻辑视图名+后缀,代码如下:

 

主要步骤:

1,在方法括号中定义Model类型

2,调用addAttribute方法,参数一为给数据命名,参数二为传入上面获取到的数据

3,最后返回jsp页面的路径

 

 

三,方法返回void类型(这里就不加以概述了)

 

 

--------------------------------------------------------------------------------------------------------------------------------------------------

这是自己第一次写博客,尚有许多的不足的地方,上述仅仅只代表自己个人的理解和观点。

若能帮助到同样有疑惑的学习者是自己的荣幸和对自己的鼓励

上述有不足的和错误的论述,有不同的理解和建议的学习者,欢迎留言指出,后面再对其加以修改和补充

     

 

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多