model java_编程中的 Model 到底是什么?

MVC 中 Model - View - Controller 中 Model 到底是啥?

常见翻译 Model 为 模型,数据,实体类,百度也这么讲的:model_百度百科

在各大 MVC 框架中,Java 的 Spring MVC 最有代表性,下文以Java为例。

实际编程时,常有用户的个人资料:

基本资料一般包含"名字"、"年龄"、"城市"等,英文字段:id, gender, age, city这些决定了 Model 的样子

在数据库则为 user 表,也就是 Model 在数据库中的样子

在 java 表现为 User 实体类:

数据在 controller 应该是 User 类的实例对象,而如果前后分离的话,这个实例对象会转成 json 格式。

数据在 View 中通常是 html 结构了:

数据从数据库,到 Model(User类),再到 Controller(new User),再到 View ( html / css ),最后在浏览器中看到,如图示

Model 在 MVC 框架的角色是:有很多字段组成的数据。这些数据可以是:类,对象,字典,集合,这些数据准备在 Controller 里被操作(即增删改查),最后在 View 呈现出来。

与 MVC 相对的,还有 MVVM,其中的 VM 是 ViewModel 的缩写,淡化了 Controller.

有些数据不用表现在 View, 如 id,一般用于与后端的 ajax 操作

而有的数据则绑定在 View, 如 表单的字段,还有 clicked selected 这样的 View 状态,与后端没有关系的字段。这些通常就是 ViewModel 的应用场景。

MVVM 在 js 框架里,Model 通常来源于与后端通讯的 ajax 格式的数据,好比 java 的实体类是来源于数据库般,而 ViewModel 则是绑定到View中的数据,像原生 js 的dataset, jQuery 的data(),angular1的 $scope, angular2 的 @Input 等,react 中的 state, vue 中的 data,都是ViewModel 实现方式。

╔————————————╗

│ ** 感 * 谢 * 阅 * 读 ** │

╚————————————╝

  • 5
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值