gwt入门和进阶_GWT入门

gwt入门和进阶

GWT是Google Web Development Kit的缩写,可让程序员使用Java开发Ajax Web应用程序。 GWT编译器将Java代码转换为JavaScript和html代码。 GWT应用程序称为模块,并且使用xml文件描述模块,假设该模块名称为xml文件的“ mymodule”名称为“ mymodule.gwt.xml”。 一个模块至少有一个入口点,它与Java程序中的main方法相同。 GWT程序代码在HTML文件中执行,而CSS文件用于改变外观。

现在我们对术语和内容已经很熟悉了,我们可以继续编写自己的GWT应用程序了。

步骤1:为Eclipse安装GWT插件

如果您已经安装了eclipse,只需进入“帮助”菜单,在“安装新软件”下,将URL设置为http://dl.google.com/eclipse/plugin/3.6 ,然后单击“下一步”和完成安装。

步骤2:创建一个新项目

选择文件>新建> Web应用程序项目。 输入名称“ com.eviac.blog.helloworld”作为项目名称和程序包。 默认情况下,它将选择“使用Google Web Toolkit”和“使用Google App Engine”,因为我们在这里仅使用Google Web Toolkit,因此您必须取消选择Google App Engine。

现在,eclipse将为您创建一个具有包结构的项目,如下所示。

步骤3:创建入口点

在com.eviac.blog.helloworld.client包中,创建一个名为
HelloWorldGwt

package com.eviac.blog.helloworld.client;  import com.google.gwt.core.client.EntryPoint;  
import com.google.gwt.event.dom.client.ClickEvent;  
import com.google.gwt.event.dom.client.ClickHandler;  
import com.google.gwt.user.client.Window;  
import com.google.gwt.user.client.ui.Button;  
import com.google.gwt.user.client.ui.Label;  
import com.google.gwt.user.client.ui.RootPanel;  public class HelloWorldGwt implements EntryPoint {  @Override  public void onModuleLoad() {  final Label label = new Label("Hello World GWT !!!");  final Button button = new Button("Click Here");  button.addClickHandler(new ClickHandler() {  @Override  public void onClick(ClickEvent event) {  label.setVisible(false);  button.setText("welcome back again!");  Window.alert("Welcome to GWT");  }  });  RootPanel.get().add(label);  RootPanel.get().add(button);  }  
}

在com.eviac.blog.helloworld包中,创建Com_eviac_blog_helloworld.gwt.xml文件。

Com_eviac_blog_helloworld.gwt.xml

<?xml version="1.0" encoding="UTF-8"?>  
<module rename-to='com_eviac_blog_helloworld'>  <!-- Inherits Web Toolkit utilities.                        -->  <inherits name='com.google.gwt.user.User'/>  <inherits name='com.google.gwt.user.theme.standard.Standard'/>  <!-- Specify the app entry point class.                         -->  <entry-point class='com.eviac.blog.helloworld.client.HelloWorldGwt'/>  
</module>

步骤3:建立html网页

在文件夹war内,创建Com_eviac_blog_helloworld.html文件

Com_eviac_blog_helloworld.html

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">  <html>  <head>  <meta http-equiv="content-type" content="text/html; charset=UTF-8">  <link type="text/css" rel="stylesheet" href="Com_eviac_blog_helloworld.css">  <title>Hello World GWT</title>  <script type="text/javascript" language="javascript" src="com_eviac_blog_helloworld/com_eviac_blog_helloworld.nocache.js"></script>  </head>  <body>  <!-- optional tag: add this if needs history support -->  <iframe src="javascript:''" id="__gwt_historyFrame" tabIndex='-1' style="position:absolute;width:0;height:0;border:0"></iframe>  <h1><center>Hello World GWT</center></h1>  </body>  
</html>

第4步:创建web.xml文件

在文件夹war / WEB-INF内,创建一个名为web.xml的xml文件。

web.xml

<?xml version="1.0" encoding="UTF-8"?>  
<!DOCTYPE web-app  PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"  "http://java.sun.com/dtd/web-app_2_3.dtd">  
<web-app>  <!-- Default page to serve -->  <welcome-file-list>  <welcome-file>Com_eviac_blog_helloworld.html</welcome-file>  </welcome-file-list>  
</web-app>

步骤5:创建css文件

在打猎者内创建一个名为Com_eviac_blog_helloworld.cssCSS文件

Com_eviac_blog_helloworld.css

h1 {  font-size: 2em;  font-weight: bold;  color: #6495ED;  
}  .gwt-Label {  color: #0000FF;  font: normal 12px tahoma, arial, helvetica, sans-serif;  height:3.5em;  width: 10.7em;    
}  .gwt-Button {  color: #0000FF;  height:3.5em;  width: 10.7em;  font-size: 12px;  font-family: arial, sans-serif;   
}

好了,我们已经完成了编码步骤,但请等待,还有一个步骤

步骤6:运行GWT应用程序

要在项目上单击鼠标右键,请选择“运行方式”->“ Web应用程序”,它将弹出一个新视图“开发模式”,复制生成的URL。

使用此链接为您的Web浏览器安装GWT插件。

现在,将URL粘贴到浏览器中,您将看到类似以下的内容,仅此而已。

现在,您知道如何构建基本的GWT应用程序,可以通过添加更多功能并使用css文件更改外观来改进它。

参考:我们的JCG合作伙伴 开始使用GWT   EVIAC博客上的Pavithra Siriwardena。


翻译自: https://www.javacodegeeks.com/2012/03/getting-started-with-gwt.html

gwt入门和进阶

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/356549.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

workbook加载文件路径_通过Workbook.XML 修复Excel自定义名称

小伙伴们经常想求助IT 提升打开Excel的速度&#xff0c; 标准回答是&#xff1a;重启。其实Excel 中影响打开速度的几个因素&#xff1a;1. 公式 2. 链接 3. 自定义名称 自定义名称常常被人忽视&#xff0c;里面经常隐藏着众多错误&#xff0c;而且有很多的名称是隐藏的&#x…

将IDE检查应用于自定义Java批注

J2SE 5中注释的引入改变了我们编写和处理Java的方式。 除了Java SE的预定义注释外 &#xff0c;框架&#xff0c;IDE和工具包还引入了自己的自定义注释 。 Checker框架提供了一些示例&#xff0c;说明如何使用自定义注释在Java中增加类型安全性 。 在本文中&#xff0c;我着眼于…

有什么用_app用什么软件编写

自己咋开发APP这得看你的学习程度了&#xff0c;如果你学了安卓开发那么久按照教程来吧&#xff0c;如果没有学过&#xff0c;那么就看看我的回答是不是贴题意的。比较快的开发app方式。接入任意后台&#xff0c;通过HBuilder封装成app。2.使用MUI&#xff0c;借用官方的组件代…

Git 初始化版本库

创建带工作区的版本库 在开始一个新项目时&#xff0c;首先就要创建并初始化代码库。如果是在本机的工作目录中&#xff0c;那么&#xff1a; $ git init 也就够用了。如果想要初始化的版本库不在当前目录&#xff0c;需要为 git init 命令指定版本库所在的目录&#xff1a; $ …

如果今天完成,ESB会是什么样子?

JavaOne 2015即将结束&#xff0c;这又是一次很棒的社区活动。 我和Rafael进行了两次会议和HOL 。 我最喜欢的会议之一实际上是&#xff1a;关于ESB&#xff08;如果今天完成的话&#xff09;的样子。 我以为那是过去&#xff1f; 我通常也倾向于这样说。 但是&#xff0c;系统…

线程间的通信 设置线程等待与线程唤醒

代码实现上述框图&#xff1a; 1 //等待唤醒机制2 3 /*4 wait(),notify(),notifyAll()必须用在同步中&#xff0c;因为同步中才有锁。5 指明让持有那个锁的线程去等待或被唤醒&#xff0c;例如object.wait(),表明让持有object这把锁的线程等待。6 7 wait():让线程进入等待状态&…

centos6.8升级python3.5.2

1.查看系统python版本 [rootmyserver01 Python-3.5.2]# python -V Python 2.6.6 2.升级3.5.2 A.下载&#xff1a;wget https://www.python.org/ftp/python/3.5.2/Python-3.5.2.tgz 或者在浏览器下载&#xff08;选择Linux/UNIX平台&#xff0c;选择3.5.2版本&#xff09; B.编译…

gwt的mvp模式_GWT MVP变得简单

gwt的mvp模式GWT Model-View-Presenter是用于大规模应用程序开发的设计模式。 它源于MVC&#xff0c;它在视图和逻辑之间进行划分&#xff0c;并有助于创建结构良好&#xff0c;易于测试的代码。 为了帮助像我这样的懒惰开发人员&#xff0c;我研究了如何减少使用声明式UI时要编…

简记用ArcGIS处理某项目需求中数据的步骤

文章版权由作者李晓晖和博客园共有&#xff0c;若转载请于明显处标明出处&#xff1a;http://www.cnblogs.com/naaoveGIS/ 1. 背景 项目需求涉及如下几个步骤&#xff1a; a.矢量化 b.获取范围内要素 c.合并要素 d.简化要素 e.获取范围外要素。 2. 矢量化 新建图层 开启编辑&am…

企业应用程序集成简介

本文是我们名为“ Spring Integration for EAI ”的学院课程的一部分。 在本课程中&#xff0c;向您介绍了企业应用程序集成模式以及Spring Integration如何解决它们。 接下来&#xff0c;您将深入研究Spring Integration的基础知识&#xff0c;例如通道&#xff0c;转换器和适…

win7 网络端口怎么设置_教你win7如何设置网络共享文件夹

网络共享是以PC机为载体的信息资源共享。如果我们想让其他人共享我们的文件夹&#xff0c;我们需要进行一些设置。今天&#xff0c;我将分享在win7系统中设置网络共享文件夹的方法现在大多数家庭都使用win7系统&#xff0c;它简化了很多设计&#xff0c;使用起来也很方便。它不…

vue 字符串分割_嗯哼vue组件taginput包教不包会

5分钟实现一个Tag-Input(标签)组件前言本文是wo写组件设计的第一篇文章(处女作)&#xff0c;之所以会写组件设计相关的文章,是因为作为一名优秀的前端工程师&#xff0c;面对各种繁琐而重复的工作&#xff0c;我们不应该按部就班的去辛(dao)勤(gen)劳(huo)动(zhong)&#xff0c…

SpringBoot项目部署与服务配置

spring Boot 其默认是集成web容器的&#xff0c;启动方式由像普通Java程序一样&#xff0c;main函数入口启动。其内置Tomcat容器或Jetty容器&#xff0c;具体由配置来决定&#xff08;默认Tomcat&#xff09;。当然你也可以将项目打包成war包&#xff0c;放到独立的web容器中&a…

向导页设计_向导设计模式

向导页设计我们都喜欢巫师……。 &#xff08;我的意思是软件向导&#xff09;。 我们总是很高兴跳到那些“下一步”按钮上&#xff0c;就像我们在我们的时髦的小鸡上跳舞一样。。。 因此&#xff0c;今天我们将您心爱的向导带入您的编码体验。 让我们跳入一个例子。 假设您要设…

微信小程序需要https后台的创业机会思考

最近比较关注微信小程序&#xff0c;而且微信小程序的后台必须强制要求https&#xff0c; https相对http成本要高很多了。 这里我感觉有2个商机 &#xff08;1&#xff09;提供https 中转服务器 ,按流量来收费 &#xff08;2&#xff09; 微信小程序https 云后台 对于很多人学…

aspx是什么语言_什么是网页

第一个问题&#xff0c;什么是网页&#xff1f;我们通常在网上浏览的所有网页都是网页&#xff0c;一个网站由一页到50页不等的网页组成&#xff0c;一些大型网站可能包含数千万页&#xff0c;是第一个打开网站的网站。这些页面被称为主页。专有名词:这里简要介绍网页、网站和主…

mysql运算结果放入表中_MySQL表1新增数据,计算开始、结束日期之间所有时间,插入到表2中...

新建表c3#id设置自增量&#xff0c;kk是要同步的一些数据值&#xff0c;dd是开始时间&#xff0c;dde是结束时间CREATE TABLE c3 (id int(11) NOT NULL auto_increment PRIMARY KEY,kk varchar(255),dd datetime,dde datetime)新建表c4#id也设置自增量&#xff0c;kk是要同步…

longtext长度为0是什么意思_为什么 HashMap 中链表长度大于 8 才转化为红黑树?

Java 中的 HashMap 采用链表法来解决哈希冲突&#xff08;HashMap 原理&#xff09;&#xff0c;即具有相同桶下标的键值对使用一个链表储存。当链表变长时&#xff0c;查找和添加&#xff08;需要确定 key 是否已经存在&#xff09;都需要遍历这个链表&#xff0c;速度会变慢。…

python图形界面教程_图形教程

python图形界面教程众所周知&#xff0c;我们可以借助Java库制作游戏&#xff0c;这些库为我们提供制作游戏所需的图形。 因此&#xff0c;今天我将开始一个关于Java图形的非常新的部分。 我之前曾发表过有关如何制作所得税计算器的文章 。 首先要满足一些先决条件&#xff1a;…

java创建树结构_Java学习之XML-017

如果想快速有效的学习&#xff0c;思想核心是“以建立知识体系为核心”&#xff0c;具体方法是“守破离”。反复练习直到熟练。————百战程序员1.0 XML1.1 XML 简介XML 指可扩展标记语言。XML 被设计用来传输和存储数据。1. 什么是XMLXML 指可扩展标记语言&#xff08;EXten…