写点什么

Struts 2.1 发布

  • 2009-02-04
  • 本文字数:955 字

    阅读完需:约 3 分钟

AI 大模型超全落地场景&金融应用实践,8 月 16 - 19 日 FCon x AICon 大会联诀来袭、干货翻倍!

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

2009-02-04 08:135038
用户头像

发布了 501 篇内容, 共 251.0 次阅读, 收获喜欢 58 次。

关注

评论

发布
暂无评论
发现更多内容

跨平台移动APP开发进阶(三):hbuilder+mui mobile app 开发心酸路

No Silver Bullet

跨平台 2月月更 mui

从冬奥看中国科技(二):造雪突围进行时

脑极体

微信朋友圈的高性能复杂度

Geek_16d2b8

#架构训练营

[架构实战营]-朋友圈的高性能架构设计

邹玉麒

「架构实战营」

作业2朋友圈高性能复杂度

Geek_28cf33

微信朋友圈的高性能复杂度分析

石小天

架构实战营

微信朋友圈高性能复杂度分析

浪飞

微信朋友圈高性能复杂度分析

Geek_f3e842

架构实战营

微信朋友圈复杂度分析&架构设计

AragornYang

架构训练营 架构实战营

架构实战营模块九作业

spark99

架构实战营

微信朋友圈高性能复杂度方案设计

Fingal

架构实战营

【第 24 期】前端食堂技术周刊

童欧巴

前端 前端开发 行业资讯 周刊 资讯

微信朋友圈架构设计

随欣所遇

#架构训练营 架构训练营5期

最全总结 | Android 系统抓包喂饭教程!

星安果

android 抓包

微信朋友圈的高性能复杂度分析

Leo

架构实战营

《MySQL入门很轻松》第3章:数据库的创建与操作

乌龟哥哥

:MySQL 数据库 2月月更

微信朋友圈架构设计

卡西毛豆静爸

架构实战营

WebRTC 如何在安卓系统上采集音频数据 | 社区征文

liuzhen007

音视频 WebRTC 新春征文 2月月更

学生管理系统详细架构设计

刘洋

架构实战营 「架构实战营」

架构实战营:模块二作业

刘璐

剑指Offer——你真的看懂无领导小组面试了吗?

No Silver Bullet

面试 offer 2月月更 无领导面试

人工智能在客户关系管理软件销售和服务模块中的应用 | 社区征文

汪子熙

人工智能 机器学习 SaaS 新春征文 2月月更

Linux系统编程-Shell脚本基本使用(数组、函数、字符串处理)

DS小龙哥

Shell 2月月更

如何用 Python 实现一个单链表

宇宙之一粟

Python 数据结构 单向链表 2月月更

微信朋友圈的高性能复杂度分析

张逃逃

聊聊领导力与带团队的那些事

大卡尔

团队管理 领导力 质量保障 2月月更

Web Components系列(七) ——自定义组件的生命周期

编程三昧

前端 组件化 2月月更 WebComponent

微信朋友圈的高性能复杂度分析

凌波微步

「架构实战营」

计算机毕业设计安卓疫苗预约APP源码,后台java springboot

清风

安卓 计算机毕业设计

架构学习【02】——朋友圈高性能复杂度分析

tiger

架构实战营

微信朋友圈高性能架构设计

五月雨

架构实战营 「架构实战营」

Struts 2.1发布_Java_Ian Roughley_InfoQ精选文章