📅  最后修改于: 2020-10-25 04:36:39             🧑  作者: Mango
在开始使用GWT创建实际的“ HelloWorld”应用程序之前,让我们看看GWT应用程序的实际部分是什么-
GWT应用程序由以下四个重要部分组成,其中最后一部分是可选的,但前三个部分是必需的。
典型的gwt应用程序HelloWord的不同部分的示例位置如下所示-
Name | Location |
---|---|
Project root | HelloWorld/ |
Module descriptor | src/com/tutorialspoint/HelloWorld.gwt.xml |
Public resources | src/com/tutorialspoint/war/ |
Client-side code | src/com/tutorialspoint/client/ |
Server-side code | src/com/tutorialspoint/server/ |
模块描述符是XML形式的配置文件,用于配置GWT应用程序。
模块描述符文件的扩展名为* .gwt.xml,其中*是应用程序的名称,该文件应位于项目的根目录中。
以下是HelloWorld应用程序的默认模块描述符HelloWorld.gwt.xml-
以下是有关模块描述符中使用的不同部分的简短详细信息。
Sr.No. | Nodes & Description |
---|---|
1 |
This provides name of the application. |
2 |
This adds other gwt module in application just like import does in java applications. Any number of modules can be inherited in this manner. |
3 |
This specifies the name of class which will start loading the GWT Application. Any number of entry-point classes can be added and they are called sequentially in the order in which they appear in the module file. So when the onModuleLoad() of your first entry point finishes, the next entry point is called immediately. |
4 |
This specifies the names of source folders which GWT compiler will search for source compilation. |
5 |
The public path is the place in your project where static resources referenced by your GWT module, such as CSS or images, are stored. The default public path is the public subdirectory underneath where the Module XML File is stored. |
6 |
Automatically injects the external JavaScript file located at the location specified by src. |
7 |
Automatically injects the external CSS file located at the location specified by src. |
这些都是GWT模块引用的所有文件,例如Host HTML页面,CSS或图像。
可以使用模块配置文件中的
当您将应用程序编译为JavaScript时,可以在公共路径上找到的所有文件都复制到模块的输出目录中。
最重要的公共资源是宿主页,用于调用实际的GWT应用程序。典型的应用程序HTML宿主页面可能根本不包含任何可见的HTML正文内容,但始终希望通过标记包含GWT应用程序,如下所示:
Hello World
Hello World
Welcome to first GWT application
以下是我们包含在宿主页面中的示例样式表-
body {
text-align: center;
font-family: verdana, sans-serif;
}
h1 {
font-size: 2em;
font-weight: bold;
color: #777777;
margin: 40px 0px 70px;
text-align: center;
}
这是为实现应用程序的业务逻辑而编写的实际Java代码,GWT编译器将其翻译为JavaScript,最终将在浏览器内部运行。可以使用模块配置文件中的元素来配置这些资源的位置。
例如,入口点代码将用作客户端代码,并且其位置将使用指定。
模块入口点是可分配给EntryPoint的任何类,并且可以在不使用参数的情况下进行构造。加载模块时,将实例化每个入口点类,并调用其EntryPoint.onModuleLoad()方法。 HelloWorld Entry Point类的示例如下:
public class HelloWorld implements EntryPoint {
public void onModuleLoad() {
Window.alert("Hello, World!");
}
}
这是应用程序的服务器端部分,非常可选。如果您不对应用程序进行任何后端处理,则不需要此部分,但是如果后端需要进行某些处理并且您的客户端应用程序与服务器交互,那么您将必须开发这些组件。
下一章将利用上述所有概念使用Eclipse IDE创建HelloWorld应用程序。