### GWT学习课件知识点详解 #### 一、GWT简介 GWT,全称Google Web Toolkit,是一款由Google开发的开源AJAX框架。它的核心功能在于能够将Java代码转换成JavaScript代码,允许开发者像构建AWT或Swing桌面应用那样来设计Web应用。 #### 二、GWT的工作原理 - **编译器**: GWT的核心组件之一,用于将Java源代码转换为等效的JavaScript代码。这使得开发者能够在开发过程中使用熟悉的Java语法和结构。 - **统一的编程模型**: GWT允许开发者使用Java编写客户端和服务器端代码,从而实现了语言层面的统一,便于代码复用和维护。 - **跨平台和兼容性**: 生成的Web应用能在多种现代浏览器中运行,包括但不限于Internet Explorer、Firefox、Safari等,确保了良好的用户体验和广泛的适用性。 #### 三、GWT的优势 1. **熟悉度**: 大多数开发者对Java更加熟悉,相较于JavaScript或Flash等技术,这降低了学习成本。 2. **丰富的开发工具**: 如Eclipse、NetBeans和IntelliJ IDEA等,为开发者提供了强大的支持。 3. **代码共享**: 客户端和服务端可以使用相同的语言编写,方便代码共享和复用。 4. **DOM抽象**: GWT封装了浏览器的DOM操作,隐藏了不同浏览器间的差异,提高了代码的健壮性和可移植性。 5. **工具箱**: 提供了一系列实用工具,如XML解析器、服务器通信工具、国际化工具等,简化了开发过程。 6. **重构友好**: GWT支持代码重构,有助于保持代码质量。 7. **模块化**: 支持项目模块化开发,易于管理和扩展。 #### 四、GWT的支持与限制 1. **数据类型**: `long` 类型需替换为 `int`,`double` 替换为 `float`。 2. **异常处理**: 不支持 `Throwable.getStackTrace()` 方法,但其他异常处理机制可用。 3. **同步**: 可以使用 `synchronized` 关键字,但没有实际效果,因为同步相关的类库方法(如 `Object.wait()`、`Object.notify()` 和 `Object.notifyAll()`)不被支持。 4. **反射**: 不支持反射机制,以提高执行效率。 5. **对象清理**: 不支持WEB模式下的Java对象清理。 6. **浮点运算**: 不支持 `strictfp` 关键字,对于需要高精度的浮点运算,建议在服务端进行处理。 7. **正则表达式**: Java正则表达式的语法需与JavaScript保持一致,以确保正确转换。 8. **序列化**: 不支持标准的Java序列化,但提供了一种RPC机制,可以自动序列化对象并与服务器交互。 9. **Java新特性**: 目前版本不支持Java 1.8的新特性,如接口默认方法等。 #### 五、GWT开发环境搭建 - **工具**: Eclipse IDE、JDK 1.8、GWT 2.8.0 工具包、GWT Eclipse 插件。 - **安装步骤**: 1. 在Eclipse中通过Help菜单安装新软件。 2. 添加并选择已下载的GWT Eclipse插件。 3. 重启Eclipse并在首选项中添加GWT工具包路径。 4. 创建新的GWT项目。 #### 六、项目结构 - **src**: 存放项目的源代码。 - **client**: 包含UI界面部分的代码,将被GWT编译为JavaScript。 - **server**: 存放服务端代码,不参与JavaScript编译。 - **shared**: 通常存放页面验证逻辑,会被编译为JavaScript。 - **test**: 存放测试代码。 - **war**: 包含项目的部署信息。 #### 七、GWT模块定义文件 - **命名**: 通常命名为 `<项目名>.gwt.xml`。 - **内容**: - **入口点**: 指定模块的主类,包含 `EntryPoint` 接口的实现。 - **继承**: 可以继承其他模块以利用其功能。 - **源码路径**: 设置源代码的位置。 - **资源路径**: 设置资源文件的位置。 - **延迟绑定**: 规定某些部分在运行时动态决定。 通过以上介绍,我们可以看出GWT为开发者提供了一种高效的Web应用开发方式,不仅简化了开发流程,还提高了应用的质量和性能。
剩余29页未读,继续阅读
- 粉丝: 0
- 资源: 4
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- ORACLE数据库管理系统体系结构中文WORD版最新版本
- Sybase数据库安装以及新建数据库中文WORD版最新版本
- tomcat6.0配置oracle数据库连接池中文WORD版最新版本
- hibernate连接oracle数据库中文WORD版最新版本
- MyEclipse连接MySQL的方法中文WORD版最新版本
- MyEclipse中配置Hibernate连接Oracle中文WORD版最新版本
- MyEclipseTomcatMySQL的环境搭建中文WORD版3.37MB最新版本
- hggm - 国密算法 SM2 SM3 SM4 SM9 ZUC Python实现完整代码-算法实现资源
- SQLITE操作入门中文WORD版最新版本
- Sqlite操作实例中文WORD版最新版本