Struts2是流行和成熟的基于MVC设计模式的Web应用程序框架。 Struts2不只是Struts1下一个版本,它是一个完全重写的Struts架构。

WebWork框架开始以Struts框架为基础,其目标是提供一个加强和改进框架Struts来使web开发的开发人员更容易。

一段时间后,WebWork框架和Struts社区联手打造的著名的Struts2框架。

Struts 2框架的特点:

这里有一些强大的功能,可能会迫使你考虑Struts2:

  • POJO表单和POJO动作 - Struts2的Struts框架已经摆脱了动作表单组成部分, Struts2可以使用任何POJO接收的形式输入。同样现在可以看到任何POJO作为一个Action类。

  • 标签支持 - Struts2中,提高了表单标签和新标签允许开发人员编写更少的代码。

  • AJAX 支持- Struts2中已确认由Web2.0技术接管,并整合到产品中,通过创建AJAX标签,功能非常相似的标准Struts2 标签AJAX支持。

  • 易于整合 - Struts2 集成各种整合与其他框架如Spring,Tiles 和SiteMesh是现在更容易。

  • 模板支持 - 支持生成使用模板。

  • 插件支持 - 可以提高核心Struts2的特性,并增强使用插件。大量的插件可供Struts2。

  • 性能分析 - Struts2的分析,调试和分析应用程序提供了集成。除此之外,Struts还提供了集成的内置调试工具调试。

  • 易于修改标签 - Struts2的标签标注,可以调整使用Freemarker的模板。这并不需要JSP或Java知识。基本HTML,XML和CSS知识是足够修改标签。

  • 提倡少配置 - Struts2 促进较少的配置的帮助下,使用默认的各种设置值。不必配置的东西,除非它不符Struts2的默认设置。

  • 视图技术: - Struts2中有一个很大的支持多个视图选项 (JSP, Freemarker, Velocity 和 XSLT)

以上只是Struts2的十大功能,这使得它是企业公司级应用框架。

Struts 2的缺点:

虽然Struts 2 的配备了一个伟大的功能列表,但我不会忘记提及关于Struts2一些缺点,将需要大量的改进措施:

  • 更大的学习曲线 - 要使用MVC与Struts,你必须是习惯使用标准的JSP,Servlet API和大量精心设计的框架。

  • 欠佳的文档 - Struts有标准的servlet和JSP API的相比,更少的在线资源,许多用户第一时间发现网上Apache文档混乱和管理不善的组织。

  • 较少透明度 - Struts应用程序中,有很多幕后比正常的基于Java的Web应用程序,这使得它很难理解的框架。

最后一点,一个好的框架应该提供通用的特性,许多不同类型的应用程序,可以利用它。 Struts 2是一个最好的网络架构和高度被用于开发富Internet应用程序(RIA)。

系列文章:

Struts2知多少(1) Struts2 MVC架构

Struts2知多少(2) Struts2 是什么的更多相关文章

  1. [原创]java WEB学习笔记71:Struts2 学习之路-- struts2常见的内建验证程序及注意点,短路验证,非字段验证,错误消息的重用

    本博客的目的:①总结自己的学习过程,相当于学习笔记 ②将自己的经验分享给大家,相互学习,互相交流,不可商用 内容难免出现问题,欢迎指正,交流,探讨,可以留言,也可以通过以下方式联系. 本人互联网技术爱 ...

  2. 第3章 Struts2框架--1、Struts2环境搭建

    第3章 Struts2框架--1.Struts2环境搭建 搭建步骤: 1.从下载http://struts.apache.org 没找到Struts2.3.16版,就下载了2.3.29 2.拷贝后解压 ...

  3. struts2讲义----建立一个struts2工程

    建立一个Struts2 工程 Ø 1在MyEclipse中新建web工程 Ø 2在struts-2.2.1.1-all\struts-2.2.1.1解压struts2-blank.war( 最基础的示 ...

  4. Struts2学习第一天——struts2基本流程与配置

    struts2框架 什么是框架,框架有什么用? 框架 是 实现部分功能的代码 (半成品),使用框架简化企业级软件开发 ,提高开发效率. 学习框架 ,清楚的知道框架能做什么? 还有哪些工作需要自己编码实 ...

  5. [原创]K8 Struts2 Exp 20170310 S2-045(Struts2综合漏洞利用工具)

    工具: K8 Struts2 Exploit组织: K8搞基大队[K8team]作者: K8拉登哥哥博客: http://qqhack8.blog.163.com发布: 2014/7/31 10:24 ...

  6. Struts2学习第一天--Struts2的概述、Struts2的入门、Struts2常见的配置、Struts2的Action的编写

    action的name要与访问路径对应.hello.action. 加到tomcat启动 访问:http://localhost:8080/struts2-1/demo1/demo1.jsp 改为su ...

  7. Struts2 第四讲 -- Struts2的基本配置

    5.struts2的基本配置 5.1 struts2的访问连接url 在struts1中,通过<action path=“/primer/helloWorldAction.action”> ...

  8. Struts2框架学习(一)——Struts2的概念及搭建

    一.Struts2的概念 使用优势:1)自动封装参数 2)参数校验 3)结果的处理(转发|重定向) 4)国际化 5)显示等待页面 6)防止表单重复提交 Struts2具有更加先进的架构以及思想 Str ...

  9. Struts2知多少(1) Struts2 MVC架构

    模型视图控制器(Model View Controller)或MVC,MVC是俗称,是一种软件设计模式,用于开发Web应用程序.模型 - 视图 - 控制器模式是由以下三个部分组成: Model - 模 ...

随机推荐

  1. Python之Django【进阶篇 】

    Model 到目前为止,当我们的程序涉及到数据库相关操作时,我们一般都会这么搞: 创建数据库,设计表结构和字段 使用 MySQLdb 来连接数据库,并编写数据访问层代码 业务逻辑层去调用数据访问层执行 ...

  2. CSS水平垂直居中总结

    行内元素水平居中 把行内元素包裹在块级父元素中,且父元素中的css设置text-align:center; <!DOCTYPE html> <html> <head> ...

  3. How Tomcat works — 七、tomcat发布webapp

    目录 什么叫发布 webapp发布方式 reload 总结 什么叫发布 发布就是让tomcat知道我们的程序在哪里,并根据我们的配置创建Context,进行初始化.启动,如下: 程序所在的位置 创建C ...

  4. 设想 Docker 下部署 KVM

    设想 Docker 下部署 KVM 一.安装 $ yum -y install kvm # kvm base , must $ yum -y install libvirt -y # libvirtd ...

  5. java中static{}语句块详解

    static{}(即static块),会在类被加载的时候执行且仅会被执行一次,一般用来初始化静态变量和调用静态方法,下面我们详细的讨论一下该语句块的特性及应用. 一.在程序的一次执行过程中,stati ...

  6. Windows系统补丁KB2962872导致InstallShield无法启动(解决方案已更新)

    20140717最新更新: Flexera Software发布了临时补丁包,该补丁包暂时禁止了InstallShield Trialware功能(中国区用户很少有用此功能)两种安装方法: 方法1. ...

  7. Android——程序移植 相关知识总结贴

    android 移植笔记有感 http://www.apkbus.com/android-11842-1-1.html   Android振动器系统结构和移植和调试 http://www.apkbus ...

  8. Jmeter之JDBC Request使用方法(oracle)

    JDBC Request: 这个sampler可以向数据库发送一个jdbc请求(sql语句),它经常需要和JDBC Connection Configuration 配置元件一起配合使用. 目录: 一 ...

  9. (转)c#.net常用字符串函数

    Compare 比较字符串的内容,考虑文化背景(场所),确定某些字符是否相等 CompareOrdinal 与Compare一样,但不考虑文化背景 Format 格式化包含各种值的字符串和如何格式化每 ...

  10. linux上挂载windows共享文件夹

    linux上挂载windows共享文件夹 1.共享windows目录 挂载之前得创建一个有password的用户(当前用户也能够),并将你要挂载的目录进行共享,并赋予读写权限 如图. watermar ...