原始内容: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. Power Network - poj 1459 (最大流 Edmonds-Karp算法)

      Time Limit: 2000MS   Memory Limit: 32768K Total Submissions: 24788   Accepted: 12922 Description A ...

  2. references non-existing project XXX, launch configuration问题的解决办法

    Go to Project->properties In properties window's left pane select "Run/Debug Settings". ...

  3. 将Mac上的***代理共享给其他设备

    Windows版***带有Share over LAN功能,可以让一些不方便安装***客户端的设备一同“鸡犬升天”,如未越狱的iOS设备.但是 OS X 就没有这么幸运了,这时候你需要Privoxy助 ...

  4. css 定位标签设置格式

    td a {      color: #3c8dbc; } td a:hover {      color: #00bdd8; } 上例即为定位td下的a标签.即用来给表格中的链接,未访问时和hove ...

  5. vue高级路由

    1.html <script src="https://unpkg.com/vue/dist/vue.js"></script><script src ...

  6. Qt 静态编译后的exe太大, 能够这样压缩.

    1. 下载PECompact 下载地址:http://download.csdn.net/download/sniper_bing/7669247 ,  不行大家就去baidu搜索下载就能够了这个是绿 ...

  7. Atitit.软件仪表盘(4)--db数据库子系统-监測

    Atitit.软件仪表盘(4)--db数据库子系统-监測 连接数::: 死锁表列表:死锁基础列表(近期几条记录,时间,sql等) 3.对server进行监控.获取CUP.I/O使用情况   4.对数据 ...

  8. Android程序执行shell脚本

    在做Android应用时,经常需要执行shell脚本,以快速实现某些功能: 在Android应用程序中执行shell脚本可以省去一大堆繁琐的代码,还可以避免不必要的错误: 比如:拷贝文件夹时,可以执行 ...

  9. redis字典的底层实现hashTable

    Redis的字典使用哈希表作为底层实现.一个哈希表里面可以有多个哈希表节点,而每个哈希表节点就保存了字典中的一个键值对 哈希表的数据结构为 table属性是一个数组,数组中的每个元素都是指向dictE ...

  10. 【BZOJ4849】[Neerc2016]Mole Tunnels 模拟费用流

    [BZOJ4849][Neerc2016]Mole Tunnels Description 鼹鼠们在底下开凿了n个洞,由n-1条隧道连接,对于任意的i>1,第i个洞都会和第i/2(取下整)个洞间 ...