注册本站  论坛  繁體中文

电脑技巧
手机 | MP3 | MP4 | 显卡 | 主板 | 显示器 | 光存储 | 笔记本 | 网络设备 | 移动存储 | 数码相机
键鼠 | CPU | 音箱 | GPS | 电视 | 服务器 | 投影机 | 机箱电源 | 品牌电脑 | 办公打印 |
| 网站首页 | Cisco | Windows | Linux | Java | Dotnet | Oracle | 网页设计 | 平面设计 | 安全 | 软件应用 | 电脑维修 | 办公维修 |
您现在的位置: 电脑技巧 >> Java >> 开源技术 >> Struts >> Java正文

Struts开发指南之MVC架构实际应用

文章来源:ChinaITLab 收集整理 作者:佚名 更新时间:2004-7-15 【 】 【加入收藏

  模型-视图-控制器(MVC)是80年代Smalltalk-80出现的一种软件设计模式,现在已经被广泛的使用。
  1、模型(Model)
  
  模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑.
  
  2、视图(View)
  
  视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。
  
  3、控制器(controller)
  
  控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。
  
 

  MVC 式的出现不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性
  
  早期的程序中,如果不注意对数功能和显示的解耦合,常常会导致程序的复杂及难以维护。很多VB,Delphi等RAD程序都有这种问题。甚至现在的C#,Java有时候也会出现把业务逻辑写在显示模块中的现象
  
  管MVC设计模式很早就提出,但在Web项目的开发中引入MVC却是步履维艰。主要原因:一是在早期的Web项目的开发中,程序语言和HTML的分离一直难以实现。CGI程序以字符串输出的形式动态地生成HTML内容。后来随着脚本语言的出现,前面的方式又被倒了过来,改成将脚本语言书写的程序嵌入在HTML内容中。这两种方式有一个相同的不足之处即它们总是无法将程序语言和HTML分离。二是脚本语言的功能相对较弱,缺乏支持MVC设计模式的一些必要的技术基础。直到基于J2EE的JSP Model 2问世时才得以改观。它用JSP技术实现视图的功能,用Servlet技术实现控制器的功能,用JavaBean技术实现模型的功能
  
  JSP Model 1 与 JSP Model 2
  
  SUN在JSP出现早期制定了两种规范,称为Model1和Model2。虽然Model2在一定程度上实现了MVC,但是它的应用用并不尽如人意
  
 

  JSP Model 1
  

  JSP Model 2
  
  model2 容易使系统出现多个Controller,并且对页面导航的处理比较复杂
  
  有些人觉得model2仍不够好,于是Craig R. McClanahan 2000年5月 提交了一个WEB framework给Java Community.这就是后来的Struts.
  
  2001年7月,Struts1.0,正式发布。该项目也成为了Apache Jakarta的子项目之一
  
  Struts 质上就是在Model2的基础上实现的一个MVC架构。它只有一个中心控制器,他采用XML定制转向的URL。采用Action来处理逻辑
  • 上一篇Java:

  • 下一篇Java:
  • 最 新 热 门
     如何在MyEclipse快速搭建Hibernate应用
     spring aop中单独代理和自动代理的设置
     Nhibernate与代码生成器介绍
     Java多线程同步设计中使用Metux
     讨论5种跟踪Java执行的方法
     在Eclipse中使用SWT进行界面设计
     Spring 结合 Hibernate 配置 C3P0
     开发不再是苦差事 用Eclipse简化开发
     解决运行eclipse内存不足的问题
     利用Ecipse生成Javadoc乱码解决方法
    最 新 推 荐
     Struts中关于用户权限限定的建议
     struts标签使用举例--logic篇
     struts开发实践—分页的实现
     Struts源码的学习之配置模块初始化的实现
     Struts实现文件下载中文乱码解决方案
     Struts源码的切片学习之Struts的初始化
     struts+newxy,开发效率提高十倍
     struts2的struts.properties配置文件详解
     我的struts分页算法的实现
     用标签库提高开发速度
    相 关 文 章

    Struts中关于用户权限限定的建议
    struts标签使用举例--logic篇
    struts开发实践—分页的实现
    Struts源码的学习之配置模块初始化的实现
    Struts实现文件下载中文乱码解决方案
    Struts源码的切片学习之Struts的初始化
    struts+newxy,开发效率提高十倍
    struts2的struts.properties配置文件详解
    我的struts分页算法的实现
    Struts教程-Struts的几个精细之处

    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告

     

    Copyright 2006-2008 pcjx.com All Rights Reserved
    电脑技巧 版权所有 粤ICP备06059145号 地图
    本网站所有内容未经许可不得转载或做其他使用