写点什么

Struts 2.1 发布

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

    阅读完需:约 3 分钟

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:135463
用户头像

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

关注

评论

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

AI实战分享 | 基于CANN的辅助驾驶应用案例

华为云开发者联盟

目标检测算法 CANN 昇腾 辅助驾驶 AscendCL

带你详细了解 Node.js 中的事件循环

编程江湖

前端开发 node,js

拍乐云解析融合语音通话技术实践

拍乐云Pano

音视频 RTC 拍乐云 技术干货 融合语音通话

带你了解家居智能的心脏:物联网关

华为云开发者联盟

物联网 智能家居 物联网关 智能网关 家庭网络

Java序列化与反序列化

编程江湖

智汇华云 | ArSDN给VMware带来了什么

华云数据

直播预告|智能运维管理平台OMP核心特性及落地场景介绍

云智慧AIOps社区

DevOps 运维 AIOPS 智能运维 运维管理

智汇华云 | 使用Kubeadm进行Kubernetes集群版本升级

华云数据

观点 | NoSQL 产品的 SaaS 化之路

RadonDB

数据库 nosql NoSQL 数据库

用户文章转载:P4 Rmdir 会自动删除空目录?不,没那么简单

龙智—DevSecOps解决方案

perforce P4 P4 Rmdir

计划被打乱怎么办?

Tiger

28天写作

盘点 2021|从零开始,向前出发

Middleware

生涯规划 个人成长 盘点2021 2021年终总结

从翻硬币游戏看敏捷开发

华为云开发者联盟

敏捷 敏捷开发 软件开发 团队 开发

探索 Design Token

凹凸实验室

前端 设计

参加过 4 届 TiDB Hackathon 是一种什么体验? | TiDB Hackathon 选手访谈

PingCAP

大型软件交付项目注意事项53条

IT民工大叔

项目管理 SaaS

【转】前端开发之React Native SDK 升级问题

@零度

前端 React Native

中国联通、欧莱雅和钉钉都在争相打造的秘密武器?虚拟IP未来还有怎样的可能

行者AI

人工智能 虚拟

netty系列之:好马配好鞍,为channel选择配套的selector

程序那些事

Java Netty 程序那些事 12月日更

seata入门介绍与seata-service部署与验证(一)

恒生LIGHT云社区

架构 分布式 seata

走访数年,编撰3年:你能看到的互联网企业案例最多的一本书

博文视点Broadview

行业分析| 实时音视频的未来

anyRTC开发者

音视频 WebRTC 实时通信 语音通话 视频通话

【转】java开发之批处理框架 Spring Batch

@零度

JAVA开发 spring batch

实战大数据,HBase 性能调优指南

编程江湖

HBase

如何使用Kubernetes里的NetworkPolicy

汪子熙

Kubernetes k8s 28天写作 docker build 12月日更

给弟弟的信第27封|学会说不,别让面子害了你

大菠萝

28天写作

低代码行业浅析

凹凸实验室

前端 低代码

智汇华云 | 桌面云卓越体验下的协议技术解析

华云数据

科技令生活“焕然一新”|年末清洁黑科技:美菱洗地机!

联营汇聚

美菱洗地机

SphereEx 亮相 openGauss Summit 2021,同云和恩墨签订战略合作协议

SphereEx

开源 ShardingSphere SphereEx 云和恩墨 战略合作

Linux之find常用命令汇总

入门小站

Struts 2.1发布_Java_Ian Roughley_InfoQ精选文章