[转]Struts 2.1发布

作者 Ian Roughley译者 崔康 发布于 2009年2月4日 上午8时13分

Struts2框架刚刚发布最新2.1版。该版本做了重大升级,包括重构更多代码到插件框架、通过增加convention插件减少XML配置和改进REST支持。

我采访了Musachy Barroso——该版本的一位开发人员,请他回答了一些问题:

2.0和2.1之间的最大区别是什么?

2.1版修改了很多错误(有关Struts和Xwork的),添加了新的插件,例如REST、Convention和Java Templates,这些都体现了我们的发展方向。 

很多功能移到了插件里,能解释一下原因吗?

基本思想就是在struts内核中只保留“核心”功能,把其他一切都移到插件里。这种做法便于维护代码库和放弃不再支持的功能,如Dojo插件。这些变化没有带给用户什么好处,如果用户不使用提到的插件,Struts的规模就比较小。 

您能谈一下为何ajax标签不受重视了吗?

Struts 2 Ajax标签基于Dojo 0.4.x,把它们移植到Dojo最新版本上意味着完全重写。Dojo已被证明难以维护,因为新版本层出不穷,甚至在小版本之间代码变动也很大。用户经常 选择直接使用Dojo,因为标签不具有Dojo提供的全部功能。由于以上原因和缺少处理Dojo标签的志愿者,我们不得不减少对Ajax标签的关注。 

为何codebehind插件变成了convention插件,引入了哪些新功能?

Convention最初由Brian Pontarelli作为外部项目开发,后来引入到Struts。Convention具有更好更快的类路径扫描器,支持更多配置元素,更好的日志功能,很多配置选项,配置重加载,便于文档化。 

什么是java templates插件?

Java Templates插件是"简单主题"(simple theme)的一个快速实现,只使用Java编写(标准实现采用FreeMarker)。该插件的标签比标准的实现快4到5倍,缺点是无法重写。

目前有很多web框架,你觉得struts2的优势是什么?

Struts 2可能是目前最松耦合的框架。它非常易用,很多功能只需要很少或者不需要配置即可使用,容易掌握。同样的,添加插件以覆盖缺省行为也非常简单。松耦合也支 持在Struts不参与的情况下编写业务逻辑。而且,Struts可扩展性非常好,目前已运行于一些超高流量的网站上。 

您还有什么要补充的吗?

Struts 2.1花费了很长时间,但是我们已经努力改进了构建和发布流程,所以未来版本更新会更加及时。

Struts 2.1.6可以通过http://struts.apache.org/2.1.6/index.html下载。

查看英文原文:Struts 2.1 Released

转载于:https://www.cnblogs.com/wing011203/archive/2009/02/05/1384282.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/276652.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

dim private public static_PHP中const,static,public,private,protected的区别

const: 定义常量,一般定义后不可改变static: 静态,类名可以访问public: 表示全局,类内部外部子类都可以访问;private: 表示私有的,只有本类内部可以使用;protected: 表示受保护的,只有本类或子类…

C#图解教程 第六章 深入理解类

深入理解类 类成员 前两章阐述了9种类成员中的两种:字段和方法。本章将会介绍除事件(第14章)和运算符外的其他类成员,并讨论其特征。 成员修饰符的顺序 字段和方法的声明可以包括许多如public、private这样的修饰符。本章还会讨论许多其他修饰符。多个修…

Apache用户身份验证

原文链接:http://www.yylog.org/?p4830 Apache用户身份验证 在apache应用过程中,管理员经常需要对apache下的目录做一些限制,不希望所有用户都能访问该目录下的文件,只对指定用户访问,此时我们就要用到apache用户身…

携程elong相继牵手支付宝转“危”为“机”

新华网浙江频道1月16日电 自电子机票全面普及以来,航空公司机票直销的力度不断加强正给传统的机票代理甚至在线旅游平台带来了极大的生存压力。 而面对危机,在进一步丰富自身产品服务之外,大的在线旅行平台也终于找到对策。继eLong此前与支付…

c# 获取word表格中的内容_Java 获取、删除Word文本框中的表格

本文介绍如何来获取Word文本框中包含的表格,以及删除表格。程序测试环境包括:IDEAJDK 1.8.0Spire.Doc.jar注:jar导入,可通过创建Maven程序项目,并在pom.xml中配置Maven仓库路径,并指定Free Spire.Doc for J…

Array.prototype.reduce 的理解与实现

Array.prototype.reduce 是 JavaScript 中比较实用的一个函数,但是很多人都没有使用过它,因为 reduce 能做的事情其实 forEach 或者 map 函数也能做,而且比 reduce 好理解。但是 reduce 函数还是值得去了解的。 reduce 函数可以对一个数组进行…

PS抠图方法[photoshop中文教程]

PS抠图方法 一、魔术棒法——最直观的方法   适用范围:图像和背景色色差明显,背景色单一,图像边界清晰。   方法意图:通过删除背景色来获取图像。   方法缺陷:对散乱的毛发没有用。   使用方法&#xff1a…

我的核心技术都是从哪里学到的?如何提高成长的?分享给大家。

1997年,我在读黑龙江大学读大二时,我认识了一个内蒙古大学计算机专业毕业的一个高材生,那时我那朋友引导了我很多,他那时候在我们家那边开一个IT公司,他知道如何靠IT技术赚钱,如何靠程序等赚钱,…

python线性回归算法简介_Python实现的简单线性回归算法实例分析

本文实例讲述了Python实现的简单线性回归算法。分享给大家供大家参考,具体如下: 用python实现R的线性模型(lm)中一元线性回归的简单方法,使用R的women示例数据,R的运行结果: > summary(fit) Call: lm(formula weig…

Object/Relation Mapping 对象关系映射

对象-关系映射(Object/Relation Mapping,简称ORM),是随着面向对象的软件开发方法发展而产生的。面向对象的开发方法是当今企业级应用开发环境中的主流开发方法,关系数据库是企业级应用环境中永久存放数据的主流数据存储…

FastReport使用方法(C/S版)

前言 这两天群里一直有群友问一些关于FastReport的问题,结合他们的问题,在这里做一个整理,有不明白的可以加 FastReport 交流群 群 号:554714044 工具 VS2017 FastReport 开始 1.新建项目,添加三个按钮。预览、设计、…

如何设置Linux时区为东八区

当我们购买美国VPS或服务器的时候,默认情况下是美国时间。对于我们定时执行某些任务会带来麻烦,所以需要设置时区为东八区。登录SSH后,执行tzselect命令。我们这里选择亚洲5.这里选择china 9。一般选东八区(北京,广东&…

python删除两个excel表中的相同元素_python筛选出两个文件中重复行的方法

查找A文件中&#xff0c;与B文件中内容不重复的内容#!usr/bin/python import sys import os字符串查找函数&#xff0c;使用二分查找法在列表中进行查询def binarySearch(value, lines): right len(lines) - 1 left 0 a value.strip() while left < right: middle int((…

求解:nhibernate2.0操作oralce提交事务时报错

代码如下: Configuration config new Configuration(); config.AddAssembly("TestCleanSnow"); ISessionFactory factory config.BuildSessionFactory(); ISession session f…

python画枫叶_python-文件的操作

一、异常 程序在运行的过程中&#xff0c;不可避免出现一些错误&#xff0c;这些错误成为异常 异常以后的代码都不会被执行 try 语句 代码块&#xff08;可能出现错误的语句&#xff09; except 异常类型 as 异常名: 代码块(出错以后执行的语句&#xff09; except 异常类型 as…

记2018年技术人一次短暂的创业

背景 2018年8月底&#xff0c;我全职加入了一家创业公司&#xff0c;具体做什么我暂时先不说吧&#xff0c;我是产品和技术负责人&#xff0c;自己出资了50w&#xff0c;大股东&#xff08;下面简称T)也就是ceo是早期阿里出身的中供销售&#xff0c;从2017年11月开始成立此公司…

如何在Apache环境下配置Rewrite规则

原文链接&#xff1a;http://faq.comsenz.com/viewnews-12 URL 静态化是一个利于搜索引擎的设置&#xff0c;通过 URL 静态化&#xff0c;达到原来是动态的 PHP 页面转换为静态化的 HTML 页面&#xff0c;当然&#xff0c;这里的静态化是一种假静态&#xff0c;目的只是提高搜…

情 人 节 快 乐

我不善于用词汇修饰我的句子&#xff0c; 我不善于用表情表达我的心情&#xff0c; 我不善于解读你那黯然的情绪&#xff0c; 我不善于去响应你小小的呼应&#xff0c; 虽然&#xff0c;你了解我&#xff0c; 你宽容于我&#xff0c; 你听我诉说&#xff0c; 你陪伴着我…

Windows 10系统安装JDK1.8与配置环境

第一步&#xff1a;下载JDK1.8 地址:https://www.oracle.com/index.html 第二步&#xff1a; 安装分两次&#xff0c;第一次是安装 jdk &#xff0c;第二次是安装 jre 。安装jdk默认的安装地址为C盘&#xff0c;安装目录 \java 之前的目录修改成你想放的目录&#xff1b;安装jr…

python3函数调用时间_Python3 time clock()方法

Python3 time clock()方法 描述 Python 3.8 已移除 clock() 方法 可以使用 time.perf_counter() 或 time.process_time() 方法替代。 Python time clock() 函数以浮点数计算的秒数返回当前的CPU时间。用来衡量不同程序的耗时&#xff0c;比time.time()更有用。 这个需要注意&am…