已阅读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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年宝鸡市眉县社区专职人员招聘(7人)考试备考题库及答案解析
- 2026年北京师范大学榆林实验学校校医招聘(2人)笔试参考题库及答案解析
- 2026年丹东市振兴区事业单位人员招聘笔试备考题库与答案详解
- 2026年黑龙江省绥化市公务员人员招聘笔试参考题库与答案详解
- 吉安弘毅资产经营有限公司财务会计招聘考试参考题库及答案解析
- 2026年西藏自治区拉萨市公务员人员招聘笔试参考试题与答案详解
- 2026年长春中医药大学公开招聘高层次及急需紧缺人才3号考试备考题库及答案解析
- 2026年贵港市港北区公务员人员招聘考试备考题库与答案详解
- 2026年上海市虹口区公务员人员招聘笔试模拟试题与答案详解
- 2026浙江大学公共管理学院方恺教授团队招聘博士后笔试备考试题及答案解析
- 2026山东省防疫安全协管员招聘考试(畜牧兽医)历年参考题库含答案详解
- 2026健康管理师考试理论知识真题及答案
- 2025 含聚谷氨酸有机水溶肥料在马铃薯种植中的应用技术规程
- 2026-2027学年清华附中九年级上册化学期中真题卷
- 2026年四川省成都市技能人才评价考评员考试题库(附答案)
- 正大集团人才评估行测题目
- 离散数学 (第七版) 课件 第二部分 集合论
- FMEA风险评估分析表实战培训
- 2025年进出口银行人员招聘笔试考试试题及答案详解
- 光伏组件拆除方案
- 全国中学语文青年教师教学展示活动一等奖《表达要得体》写作指导课课件
评论
0/150
提交评论