2天时间,聊今年最热的 Agent、上下文工程、AI 产品创新等话题。2025 年最后一场~ 了解详情
写点什么

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

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

关注

评论

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

NFTScan 正式上线 Viction NFTScan 浏览器和 NFT API 数据服务

NFT Research

NFT\ NFTScan nft工具

YOLO 施工安全帽目标检测模型

3D建模设计

目标检测 YOLO模型 安全帽模型

告别繁琐,ModelArts一键解决车牌号识别难题

华为云开发者联盟

人工智能 华为云 华为云ModelArts 华为云开发者联盟

高性能、无界限:选择国外服务器的原因和技巧

一只扑棱蛾子

国外服务器

罗拉rola-ip详细解析HTTP协议连接与服务器

Geek_ccdd7f

多GPU训练大型模型:资源分配与优化技巧 | 英伟达将推出面向中国的改良芯片HGX H20、L20 PCIe、L2 PCIe

GPU算力

AI创新下的生成式人工智能——Amazon Bedrock

淼.

2023开源产业生态大会OpenHarmony生态分论坛开幕在即

新消费日报

Util应用框架开发环境搭建(九)- 安装 Exceptionless

何镇汐

开源 后端 .net core

以程序员的身份使用curl获取速卖通详情

Noah

准「AI 时代」下,如何衡量程序员的工作效率和生产力?

LigaAI

人工智能 研发管理 研发度量 AIGC 研发效能管理

苹果系统下载:macOS 12 Monterey v12.7.1正式版

加油,小妞!

苹果系统下载 macOS 12 Monterey

sublime text Mac前端代码编辑工具 支持M1

加油,小妞!

Sublime Text 4下载 Sublime Text 4注册版

PON网络是什么?

小魏写代码

全方位探索:思维导图能在这些地方派上用场!

职场工具箱

思维导图 工具库

媒体行业的3D建模:在影视中创造特效纹理

3D建模设计

AI纹理 影视视觉特效 3D特效

Codewhisperer 使用评价

亚马逊云科技 (Amazon Web Services)

Python 人工智能 云上探索实验室 Amazon CodeWhisperer Amazon Cloud9

深度长文:全面探讨流程图的应用,打开你的新视野

职场工具箱

流程图绘制工具

可怕!.Net 8正式发布了,.Net野心确实不小!

不在线第一只蜗牛

.net 编程语言

Util应用框架开发环境搭建(八)- 安装 Seq

何镇汐

开源 后端 软件开发 .net core

罗拉Rola-IP海外住宅IP简介:全球互联网接入的另一面

Geek_ccdd7f

HTTP方法罗拉rola-ip全面解读

Geek_ccdd7f

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