GWT入门介绍.ppt_第1页
GWT入门介绍.ppt_第2页
GWT入门介绍.ppt_第3页
GWT入门介绍.ppt_第4页
GWT入门介绍.ppt_第5页
已阅读5页,还剩23页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 GWT技术介绍 Gift CJWBUAA ACT2007 3 19 如何使用Java语言开发Ajax应用 2 什么是Ajax Ajax是AsynchronousJavaScriptandXML 以及DHTML等 的缩写 由XHTML CSS JavaScript XMLHttpRequest XML等技术组合而成 是当前Web应用开发领域的热门技术 用于创建更加动态和交互性更好的Web应用程序 提升用户的浏览体验 Ajax的核心是JavaScript对象XmlHttpRequest XmlHttpRequest处理所有服务器通信的对象 是一种支持异步请求的技术 XmlHttpRequest可以使用JavaScript向服务器提出请求并处理响应 而不阻塞用户 3 困难在哪 如何解决 因为JavaScript不易调试 所以编写AJAX应用程序往往让人头痛 GoogleWebToolkit GWT 是一个使用Java语言开发Ajax应用的开发框架 在开发和调试AJAX应用程序时 和其它的Java程序没有任何区别 选用什么样的Java开发工具完全由自己的喜好所定 开发完毕以后要部署到应用服务器中 GWT自带的编译器将Java应用程序编译成与浏览器兼容的JavaScript和HTML页面 4 GWT的特点 动态 可重用的UI组件简单的RPC调用方便的调试功能浏览器兼容性 IE Opera Firefox 可扩展性 JSNI 5 GWT四大组成 一个Java to JavaScriptcompiler一个 hosted web浏览器 两套Java类库 6 两种模式 HostMode 宿主模式 未编译前 在GWT提供的HostMode的浏览器中查看 可以用于调试GWT程序 会打出异常位置 WebMode 编译后 在浏览器中查看 7 如何开发GWT应用 a 将用到的GWT库添加到IDE里 在IDE中用Java语言编写和调试一个应用程序 b 使用GWT自带的Java2JavaScript编译器将写出来的代码编译成JavaScript和HTML文件 c 将编译后的代码发布到WebServer上 d 检测是否满足主流的浏览器 一般没有问题 8 在Eclipse下开发 第一步 创建工程 1 创建Eclipse工程第一步使用 projectCreator eclipse工程名称比如 projectCreator eclipseDemoProject第二步使用 applicationCreator eclipse工程名称类包名称 client 类名比如 applicationCreator eclipseMyProjectorg buaa client DemoApplication 9 Eclipse下开发 第二步 导入Eclipse 10 在Eclipse下开发 第二步 修改入口类 添加相应代码 每一个GWT程序都有一个入口点 必须继承自EntryPoint接口 实现OnModuleLoad方法其事件触发模式是类似于AWT当中的处理模式 事件触发 入口点 11 在Eclipse下开发 第三步 编译 点击Test Shell cmd可以开启HostedMode 并察看运行结果或者点击Test Compile cmd 可以开启WebMode 将代码解析成为javascript 并可以在Web浏览器中察看 12 在Eclipse下开发 第四步 部署和执行 部署到Tomcat等应用服务器当中 13 GWT类库总览 com google gwt core client用于客户端的GWT基本代码com google gwt core ext用于扩展GWT编译器的类 com google gwt core ext typeinfo为支持自动生成功能的类库com google gwt http client提供对HTTP的请求响应处理类com google gwt i18n client国际化com google gwt json client解析和创建Json类型的类库com google gwt junit clientJunit测试com google gwt user client客户端使用的基本GWT接口 com google gwt user client rpc客户端为使用RPC功能的GWT接口 com google gwt user client uiWidgets Panels 以及其他的UI接口com google gwt user server rpc服务端为了实现RPC调用实现的接口 com google gwt xml clientXML的解析和使用 14 GWT类库 UI 在UI类库中 GWT提供了若干种widgets和panels 所有的类都继承自widget 并被加入到panel中被显示 Panels包括DockPanel HorizontalPanel 和RootPanel等Widgets包括Composite FileUpload FocusWidget Frame Hidden Hyperlink Image Label MenuBar Panel和Tree等等 15 GWT类库 UI组件 16 GWT类库 RPC 17 GWT类库 RPC 客户端和服务端进行交互 在服务端加入对RPC服务的处理 在客户端的AsyncCallback接口实现中对结果进行处理 异步处理 GWT自动的对各种数据类型进行序列化和反序列化处理 18 GWT类库 HTTP 支持POST和GET两种HTTP方法 例子 GET的使用HTTPRequest asyncGet customerRecord xml newResponseTextHandler publicvoidonCompletion StringresponseText Intherealworld thistextwouldcomeasaRPCresponse This techniqueisgreatfortestingandsamplesthough renderXML responseText 19 GWT类库 DOM的处理 Packagecom google gwt xml client包括对XML类型的解析处理类Documentdoc XMLParser parse string XMLParser removeWhitespace doc 对XML的使用Node Element etc 20 GWT类库 JSON的支持 JSON JavaScriptObjectNotation 是一种轻量级的数据交换格式 易于人阅读和编写 同时也易于机器解析和生成 它基于JavaScriptProgrammingLanguage StandardECMA 2623rdEdition December1999的一个子集 JSON采用完全独立于语言的文本格式 但是也使用了类似于C语言家族的习惯 包括C C C Java JavaScript Perl Python等 这些特性使JSON成为理想的数据交换语言 GWT对JSON进行了支持 JSON的功能可以用XMLDOM代替 21 JSON格式的例子 使用JSON comments id 1 author someone1 url content hello id 2 author someone2 url content hello id 3 author someone3 url content hello 使用XML表示1someone1hello2someone2someone13someone3hello 22 GWT类库 JSNInative接口 JavaScriptNativeInterface JSNI JSNI方法被声明为native方法 并在如下的格式中包含了JavaScript代码 他可以支持在Java代码中嵌入JavaScript publicstaticnativevoidalert Stringmsg wnd alert msg 23 GWT类库 Junit 对GWT进行测试 继承GWTTestCase抽象类实现getModuleName方法publicclassFooTestextendsGWTTestCase publicStringgetModuleName return com example foo Foo publicvoidtestStuff assertTrue 2 2 4 24 GWT Designer像VB那么拖拽开发 演示1 如何建立GWT工程2 如何在Eclipse里进行开发3 开发GUI以及进行相应的事件处理4 RPC调用以及同GUI的结合5 HTTP异步调用以及DOM XML格式的处理 25 GWT小结 使用一 二种技术

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论