原始内容:https://www.tutorialspoint.com/struts_2/basic_mvc_architecture.htm

Apache Struts 2是用来创建企业级Java Web应用的一个优雅的、可拓展的框架,它最初被称作WebWork 2。

这个框架的目的在于——简化整个Web应用的开发周期,从构建到部署,以及后续的维护工作。

下面的教程将通过简单的步骤来教会你——如何使用Apache Struts创建企业级别的Java Web应用程序。

听众

这个教程是为想要理解Struts 2.x框架以及它的应用程序的Java程序员而设计的,它将为你带来中等水平的实验。

先决条件

在进行本教程之前,你需要对Java编程语言有一个比较好的理解。

对于MVC框架和JSP或者Servlet的基本了解将有助于你的学习。

基础MVC架构

MVC是一个用于开发Web应用的设计模式。这个模式由下面三个部分组成:

  • Model - 模式的最低级别,负责数据维护。

  • View - 负责向用户显示数据。

  • Controller - 负责模型和视图之间的交互。

MVC很受欢迎,因为它将“用户界面”和“程序逻辑”独立出来,并支持分离。——Controller接受用户请求,配合Model准备View所需要的数据,最后由View生成可视化的响应。

model

模型负责管理应用的数据,它响应来自视图的请求、控制器的指令,并以此为依据更新自身。

view

以特定的格式呈现数据,需要控制器触发;

是基于脚本的模板系统,常见的视图有JSP,ASP,PHP等,

非常易于与AJAX技术集成。

controller

控制器负责响应用户输入、与数据模型对象交互。它接受输入、验证输入、然后执行修改数据模型状态的业务操作。

Struts2是一个基于MVC的框架。在接下来的章节中,让我们来看看——如何在Struts2中使用MVC方法。

Struts2笔记01——基础MVC架构(转)的更多相关文章

  1. struts2.1笔记01:MVC框架思想浅层理解

      1. Struts 1是全世界第一个发布的MVC框架: 它由Craig McClanahan在2001年发布,该框架一经推出,就得到了世界上Java Web开发者的拥护,经过长达6年时间的锤炼,S ...

  2. struts2 笔记01 登录、常用配置参数、Action访问Servlet API 和设置Action中对象的值、命名空间和乱码处理、Action中包含多个方法如何调用

    Struts2登录 1. 需要注意:Struts2需要运行在JRE1.5及以上版本 2. 在web.xml配置文件中,配置StrutsPrepareAndExecuteFilter或FilterDis ...

  3. PHP学习笔记01——基础语法

    <!DOCTYPE html> <html> <?php // 1.使用$加变量名来表示变量,php是弱类型语言,不要求在使用变量前声明,第一次赋值时变量才被创建 $a ...

  4. Elasticserach学习笔记-01基础概念

    本文系本人根据官方文档的翻译,能力有限.水平一般,如果对想学习Elasticsearch的朋友有帮助,将是本人的莫大荣幸. 原文出处:https://www.elastic.co/guide/en/e ...

  5. [JavaWeb基础] 019.Struts2 MVC架构之ModelDriven

    用过struts1的人接触struts2的时候,通常会产生一个疑惑,明明struts1已经把action的form分开了,为什么struts2确把模型放在action中定义.其实这个方式只是想让act ...

  6. Angular JS从入门基础 mvc三层架构 常用指令

    Angular JS从入门基础  mvc模型 常用指令 ★ 最近一直在复习AngularJS,它是一款优秀的前端JS框架,已经被用于Google的多款产品当中.AngularJS有着诸多特性,最为核心 ...

  7. 1 TensorFlow入门笔记之基础架构

    ------------------------------------ 写在开头:此文参照莫烦python教程(墙裂推荐!!!) ---------------------------------- ...

  8. ExtJS 4.2.1学习笔记(一)——MVC架构与布局

    1       ExtJS入门 1.1     支持所有主流浏览器 调试推荐:chrome.Safari.Firefox 1.2     推荐目录结构 - appname (包含所有程序代码,是根目录 ...

  9. Struts2笔记03——架构(转)

    原始内容:https://www.tutorialspoint.com/struts_2/basic_mvc_architecture.htm 架构(很重要!尤其是图!) 从一个比较高的层次来看,St ...

随机推荐

  1. 算法之动态规划(最长递增子序列——LIS)

    最长递增子序列是动态规划中最经典的问题之一,我们从讨论这个问题开始,循序渐进的了解动态规划的相关知识要点. 在一个已知的序列 {a1, a 2,...an}中,取出若干数组成新的序列{ai1, ai ...

  2. Mary的加盟

    Mary的加盟 1995年早些时候,我们招收了一个合同编制员——Mary Campione.她和我在后来的工作互助中相识.Mary的工作是帮助程序员使用平台特色如线程.我们很快意识到我们的工作如此相似 ...

  3. cv resource

    http://blog.sina.com.cn/s/blog_5086c3e20101kdy5.html

  4. OpenGL ES andoid学习————2

    package com.xhm.getaccount; import java.nio.ByteBuffer; import java.nio.ByteOrder; import java.nio.F ...

  5. 椭圆参数方程中的θ(离心角Theta)

    椭圆参数方程中的离心角θ是交以其x轴对应外接圆上点的角度(或是交以其y轴对应内接圆上点的角度) 椭圆的参数程为:x=acosθy=bsinθ.M(x,y)椭圆上一点.过M作直线⊥X轴,交以O为圆心,以 ...

  6. ios UICollectionView reloadData无法更新的奇怪问题。

    报错    Assertion failure in -[UICollectionViewData invalidateItemsAtIndexPaths:] 近来偶尔用到UICollectionVi ...

  7. 用sql语句,快速备份表数据

    1.SqlServer数据库 --DataTable 原数据表 --DataTable_20150717 要备份的新表名 select * into DataTable_20150717 from D ...

  8. PHPCMS 前台移用地区联动数据

    在PHPCMS中,有时候需要建立模型有地区联动,这个联动数据在这前台调用显示呢?今天清源就给大家介绍一下! 地区联动菜单的缓存文件是  caches\caches_linkage\caches_dat ...

  9. Android无线测试之—UiAutomator UiDevice API介绍七

    截图与等待空闲 一.截图和等待空闲相关知识: 1)图片缩放比例:例如图片从100像素缩小到50像素 2)图片质量:是指图片大小,质量越高图片越大,质量越低图片越小 3)File类:指的是一个文件或者一 ...

  10. 《从零开始学Swift》学习笔记(Day4)——用Playground工具编写Swift

    Swift 2.0学习笔记(Day4)——用Playground工具编写Swift 原创文章,欢迎转载.转载请注明:关东升的博客 用Playground编写Swift代码目的是为了学习.测试算法.验证 ...