AICon 北京站 Keynote 亮点揭秘,想了解 Agent 智能体来就对了! 了解详情
写点什么

GWT 携其大量开源框架项目“来势凶猛”

  • 2008-01-23
  • 本文字数:2375 字

    阅读完需:约 8 分钟

在 RIA(rich internet application)社区中,越来越多的人选择使用 GWT(Googel Web Toolkit)。由此催生了很多框架和类库,这些框架和类库或者作为 GWT 的补充、或者以 GWT 为基础提供更强大的功能:

GWTx下载

GWTx 关注于加强 Google 提到的 JRE 模拟(JRE Emulation)。GWT 提供使用 Javascript 实现的一些核心 Java 类库,这样一来,使用 Java 为 GWT 所做的编程,GWT 本身可以将它们恰当的“编译”或者翻译成 Javascript。

GWT-DND下载

GWT-DND 是对 GWT 提供 drag-and-drop 支持的一个扩展库。GWT-DTD 在社区中被广泛使用,另外有一些项目(例如下面将要提到的 GWT Diagrams)直接使用该扩展库,或提供对它的集成。该扩展库已经非常成熟,去年,在它作为对核心 GWT 的系列补丁包提供下载时,很多用户就已经证实了它的价值。

Hibernate4gwt下载

Hibernate4gwt 是特别为将 GWT 的 Java 后端与成熟的 ORM Java 工具 Hibernate 相集成而提供的开发框架。在 GWT 应用软件中使用类似 Hibernate 这样的类库时,GWT 既表现出了无与伦比的复杂性,也展现了前所未有的机会。通过利用 GWT 中远程服务的 API 以及 Hibernate 库的特性,Hibernate4gwt 能够提供一大把优缺点各不相同的不同集成选项:

  • 无状态型(默认选项):你的服务器保持无状态,不保存任何额外信息。你的域类不得不从 LazyGwtPojo 继承从而储存延迟属性(lazy attributes)。
  • 动态代理:代理是用来处理服务器端和客户端的延迟属性信息的。你只需要实现 Serializable 接口,并迫使 GWT 延缓捆绑于客户端(详细信息请查看相关文档)。
  • 支持 Java 5:鉴于 GWT 并不支持 Java5 的 bean,hibernate4gwt 允许你将你的 Domain 类动态克隆成 GWT 兼容的 DTO。这些克隆类必须使用和域类本身一样的名字(但两者在不同的包中),并且继承 LazyGwtPojo。另一方面,hibernate4gwt 会为你管理延迟属性,且不要求任何克隆映射文件。
  • 状态型:延迟信息并不储存于 POJO,而是储存在 HTTP 会话中,因而,你的域类不必再从 LazyGwtPojo 继承,但你的 Web 服务器变成有状态的了。

另外,Hibernate4gwt 也对结合使用 Spring 框架(该框架对于要使用下文将提到的 GWT-SL 的开发者同样很有价值)提供支持。 MyGWT下载

MyGWT 是目前最受欢迎的 GWT 开发框架之一,它使用了基于 LGPL 许可的 Ext Javascript 库,该 Javascript 库和开发框架是由同一个团队开发的。MyGWT 通过引入现存并已经很成熟的 Ext 库而给 GWT 提供了大量的 Javascript 功能。

在 MyGWT 库中包含有像按钮、对话框、表格、树型结构、列单以及标签等等控件的实现。MyGWT 还提供了一些布局来在用户界面中组织组件。此外,它还支持对各种组件的多种动态数据加载方案,包括 XML 数据仓库、JSON 和 GWT 远程通信层

GWT-Ext下载

GWT-Ext 在很多方面都跟 MyGWT 相似。正如 MyGWT 一样,GWT-Ext 也建立于 Ext Javascript 库之上。也正是出于这个原因,GWT-Ext 中所提供的控件和 widget 无论是在外观还是行为上都近似于 MyGWT。但是,GWT-Ext 另外支持一些 MyGWT 中没有的组件跟特性,比如 DatePickers、显性表单和验证功能、以及树型结构中的 drag-and-drop。

和 MyGWT 一样,GWT-Ext 也对它的控件支持很多后端数据源(back-end data sources)。

Gwittir下载

Gwittir 项目是 GWT 的一个组件库,它的重点在于使用一个一致的用户界面对交互机制建模。Gwittir 的开发者这样描述它:

这个项目的目的在于提供一组代码生成器、建构基本框架、工具和基本的 MVC 框架,供给基于 Google Web Toolkit 的应用软件使用。

在很多方面,Gwittir 与 MyGWT、GWT-Ext 很相像,他们都是 GWT 的用户界面库,提供像组件、流程控制、验证、甚至是动画方面的功能。然而,MyGWT 和 GWT-Ext 使用的是一个相当常见的 MVC 风格的模式(比如类似 Swing 组件的布局),但 Gwittir 采用一个不同寻常的方式将业务模型集成到用户界面上。作者在 Gwittir 官方网站上指出了传统 MVC 模型的一些弱点: 我有一些想法想坦白地告诉大家。我几乎讨厌过所有曾使用过的任何环境下的用户界面工具。如今,模型-视图-控制器的模式引入使用已经有很长一段时间,在 Java 领域的一些用户界面工具像 Swing 或 SWT 在建立用户界面控件的时候广泛采用了这一模式。但问题是他们的模型和你的模型永远都不一样。在你使用用户界面工具的时候,你总是想要竭尽全力去创建一个能够很好地结合你的业务模型来工作的用户界面,而并不是用户界面工具的设计者所使用的抽象模型。 GWT-SL 和 GWT-WL下载

GWT Server Library(GWT-SL)是一个旨在简化 GWT 应用软件和 Spring 框架集成的项目。

SL 是 GWT Widget Library 的一个子项目,它通过允许将 POJO 作为 RPC 服务发布的方法帮助实现 GWT RPC 服务与 Spring 的集成。

同时,GWT Widget Library(GWT-WL)是另外一个将目标瞄准于提供比基本 GWT 安装提供功能更强大的 widget 的项目。在 GWT-WL 中支持的 widget 包括日历、计算器、图像按钮、状态条、分页标记等等。

GWT Diagrams下载

和上面所提到的组件库不同的是,GWT Diagrams 致力于为通过GWT 展现变化多端的图像提供更多功能。GWT diagrams 所包含的特性包括:支持多种连接线类型,将任意GWT UIObject 作为连接点的能力,以及控制连线连接到组件的不同边的能力。

除了在上面列出的这些项目以外,还有一些其他为GWT 提供的开源代码库,它们活跃程度与社区采用程度各不相同。在我们前面没有提到的库中还包括 Rocket GWT (这个库提供从 widget 到额外的 JRE 模拟库等各种各样的功能), gwt-maven (提供 GWT 与 Maven 的集成), gwt-math (提供了核心 Java math API 的一个扩展库实现),这里就列举这些。

InfoQ 将继续追踪报道 GWT 开源开发社区的最新进展。

查看英文原文: GWT Shows Momentum With the Creation of Numerous Open Source Framework Projects

2008-01-23 03:462145
用户头像

发布了 71 篇内容, 共 22.1 次阅读, 收获喜欢 3 次。

关注

评论

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

和鲸科技受邀出席辽宁省计算机基础教育学会 2024 年学术年会

ModelWhale

AE关键帧缓入缓出曲线调节脚本 AEscripts flow mac版 支持M1/M2

Rose

AE关键帧

玩转京东商品评论数据接口:数据挖掘与洞察

tbapi

京东商品评论内容接口 京东API 京东商品评论数据接口

photoshop阴影插件 Shadowify 苹果Mac版

Rose

ps阴影插件 Shadowify

鲁棒性目标检测 TOP2 方案分享

阿里云天池

4大要点助你选择室内LED显示屏

Dylan

LED显示屏 全彩LED显示屏 led显示屏厂家 户内led显示屏

和鲸携手山东大学数字人文实验室,推动新文科与人工智能融合发展

ModelWhale

OpenSPG 首个 Release 版本发布,提供成熟可靠的知识构建解决方案

可信AI进展

人工智能

行云堡垒-幽影护企业数据安全!

行云管家

数字化 数据安全 企业数据

Tomcat源码分析 (一)----- 手撕Java Web服务器需要准备哪些工作

派大星

tomcat源码解读

Coze插件发布!PDF转Markdown功能便捷集成,打造你的专属智能体

合合技术团队

人工智能 PDF

D2O 前置放大器仿真插件(Triton Audio D2O mac版下载安装)

Rose

Optical Flares插件怎么安装?Optical Flares中文汉化版详细安装教程

Rose

第二届海南大数据创新应用大赛 - 算法赛道冠军比赛攻略_海南新境界队

阿里云天池

专业音调校正和操控 Nuro Audio Xpitch for mac v1.0.2激活版

Rose

Adobe Camera Raw增效工具 for mac v16.2.0中文激活版

Rose

Adobe Camera Raw下载 Adobe Camera Raw中文 Adobe Camera Raw破解

中文汉化版 眼睛糖果滤镜PS插件 Alien Skin Eye Candy 7下载安装

Rose

ps滤镜下载 Alien Skin Eye Candy 7 眼睛糖果滤镜

使用代理IP有风险吗?

IPIDEA全球HTTP

代理IP

行云堡垒V7.4新特性

行云管家

云解析的智能线路是什么意思?有什么实际用途?

国科云

谷歌正式开放Imagen 3访问权限!OpenAI的GPT-4o连续两周迎来两次更新!|AI日报

可信AI进展

人工智能

一汽集团数据专家分享:实时数据技术在汽车行业的应用与实践经验

tapdata

Go语言中高效使用Redis的Pipeline

左诗右码

Go

郑雁鹏|浅谈工业实时数据库和时序数据库的关系

麦杰研究院

数据库 工业实时数据库 工业时序数据库 麦杰科技 麦杰研究院

中文版Nik Collection 6 滤镜插件套装 适用于ps/lr

Rose

Nik Collection 6 滤镜

编程神器:IDA Professional 逆向工程和静态分析工具

Rose

编程开发 IDA Professional IDA Professional9破解版 反汇编逆向神器

华为云联创营CIO领航班第一期:数字化转型与AI赋能的深度探索

科技热闻

探索顶级PDF水印API:PDFBlocks(2024年更新)

幂简集成

API PDF水印

FCPX插件:MotionVFX - mWedding 2 盛大的婚礼效果

Rose

GWT携其大量开源框架项目“来势凶猛”_Java_R.J Lorimer_InfoQ精选文章