GWT都有什么特性

2023-07-06   


GWT除了支持将应用Java语言开发的应用转化为Ajax应用,同时提供了更多的高级特性,下面是这些特性的简单描述。
   1.GWT编译器
   GWT编译器是GWT的核心,负责完成将Java代码翻译很Ajax内容的工作。GWT编译器能够翻译Java语言的大部分特性。包括支持Java 语言中的基本类型、违例处理等,支持java.lang包和java.util包中的绝大部分类和接口,支持正则表达式和序列化。
   2.跨平台支持
   如果你使用GWT中提供的显示组件(比如Button)和组装组件(比如VerticalPanel),GWT编译生成的Ajax应用能够支持大部分的浏览器和操作系统,比如Internet Explorer、Firefox等,也能够支持Linux、Windows等不同操作系统。这是因为GWT最大限度的将这些控件翻译成浏览器内置的类型。比如Button类编译后生成的是标准HTML:
   GWT建议使用CSS修饰页面元素的显示效果。GWT的类中很少提供访问页面元素样式属性的方法,我们可以直接在CSS文件中通过对应的样式名称来设置页面元素的默认显示效果。比如使用 .gwt-Button font-size: 150%; 使用Button元素的默认显示效果。
   3.宿主模式(Hosted Mode)
   宿主模式是指我们和没有转换为Ajax应用的GWT应用交互的状态。当我们开发和调试时,我们就一直处在宿主模式下。在这种情况下,Java虚拟机使用GWT内置的浏览器运行GWT应用编译后的class内容,因此能够提供”编码、测试、调试”过程的最佳速度。
   我们可以运行com.google.gwt.dev.GWTShell启动宿主模式。
   4.Web模式(Web Mode)
   Web模式是指已经成功转化为Ajax应用的状态,这种状态下,我们已经开始通过Web方式来访问Ajax应用了。
   在Web模式下运行时,不再需要GWT工具包或者JVM的支持。
   5.命令行工具
   GWT工具包中提供了几个非常适用的小工具来帮助我们更快的建立GWT应用开发环境:projectCreator、applicationCreator、junitCreator。
   * projectCreator
   创建在Eclipse中开发GWT应用所需要的项目基本文件和可选的Ant buildfile文件。
   * applicationCreator
   applicationCreator命令用于创建基本的HelloWorld!应用和GWT应用开发环境。
   * junitCreator
   生成junti测试代码。
   1.动态,可重用的UI组件
   GWT提供的组件库使用户可以很容易的开发出漂亮的UI, 每个组件对应于GWT的一个类。在本文的第二部分会比较详细的介绍GWT对UI的支持。
   2.简单的RPC调用
   使用GWT,可以方便的实现客户端和服务器端的通信,特别是使得异步通信变的非常简单。在本文的后面部分将对利用GWT进行RPC调用进行详细介绍。
   3.更加方便的调试
   由于在开发阶段不需要生成HTML截面,用户开发的代码实际上是在JVM上运行的,这样用户就可以用传统的调试Java代码的方法对程序进行调试,从而加快了调试的速度,减少了软件开发的时间。
   4.浏览器兼容性
   在大多数情况下,用GWT开发出来的程序会支持IE、Firefox、Mozilla、Safari和Opera,用户在开发的时候不必担心浏览器的兼容性问题。而浏览器的兼容性问题也是用直接用Javascript进行Ajax应用开发所面临的一个另程序员棘手问题。
   5.可扩展性
   如果你觉得GWT提供的API不能满足需求,你可以利用JSNI将Javascript语句直接嵌入至Java代码中。


相关内容:

  1. 什么是GWT的Module
  2. 什么是GWT的Entry Point
  3. GWT (Google Web Toolkit)有哪些主要的原件组成?
  4. 什么是Remote Module
  5. GWT的应用有哪两种部署模式
  6. 某个公司的Java笔面试题