http://zh.wikipedia.org/zh/MVC
MVC模型:是软件工程中的一种软件架构,分成模型+视图+控制器;
目的:实现一种动态的程式设计,简化程序的修改和扩展,并重用部分代码,简化代码结构。
组件功能:
1、模型:算法模块,数据库接口等;后台应用程序
2、视图:图形界面显示;前台显示数据界面
3、控制器:处理转发业务请求命令;前台交互按钮
Java 平台企业版 (J2EE)
和其他的各种框架不一样,J2EE为模型对象(Model Objects)定义了一个规范。
视图(View)
在J2EE应用程序中,视图(View)可能由Java Server Page(JSP)承担。生成 View 的代码则可能是一个servlet的一部分,特别是在客户端服务端交互的时候。
控制器(Controller)
J2EE应用中,Controller 可能是一个servlet,现在一般用Struts2/SpringFramework实现。
模型(Model)
Model 则是由一个实体Bean来实现。
Java Swing
Swing是一个标准的MVC结构.ComponentUI代表 View, 负责描画组件. 组件尤其 Model 层, 比如JTextField的Document, JTable的TableModel, JTree的TreeModel等等. 而Control可能不是很明显, 我们或许可以简单的将其Event机制看作一个Swing团队开发给开发者的 Controller。
作为Java开发者, 如果想理解MVC的结构, 学习Swing的确是个不错的选择.
Android
Android中界面部分也采用了当前比较流行的MVC框架,在Android中:
视图(View)
一般采用XML文件进行界面的描述,使用的时候可以非常方便的引入。当然,如果你对Android了解的比较的多了话,就一定可以想到在Android中也可以使用JavaScript+HTML等的方式作为 View 层,当然这里需要进行Java和JavaScript之间的通信,幸运的是,Android提供了它们之间非常方便的通信实现。
控制器(Controller)
Android的控制层的重任通常落在了众多的Activity的肩上,这句话也就暗含了不要在Activity中写代码,要通过Activity交割 Model 业务逻辑层处理,这样做的另外一个原因是Android中的Activity的响应时间是5s,如果耗时的操作放在这里,程序就很容易被回收掉。
模型(Model)
对数据库的操作、对网络等的操作都应该在 Model 里面处理,当然对业务计算等操作也是必须放在的该层的。就是应用程序中二进制的数据。