- 1、本文档共49页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
GWT技术分享汇
* * 问答 * GWT就像是WEB应用程序开发中的高级语言,它用java语言抽象了Web开发中需要处理的各种细节, 暴露给开发者一个统一的高层接口, * 下面将会从以下四个方面给大家介绍GWT这门技术 在正式开始之前,先给大家演示一个使用GWT技术开发的系统ESGS ESGS是,稍后介绍到的GWT的各种特点都可以在ESGS中找到。 * Web应用程序由web服务器和浏览器两个主体构成 Web服务器负责生成HTML、js、css等数据,然后通过http协议传送给浏览器 浏览器再渲染HTML、执行其中的javascript,最终呈现给用户的就是我们看到的应用程序的各种界面元素和动态行为 在服务器端比较重要的是如何生成HTML、js、css等数据,比较常用的方法是使用JSP、JSTL等技术,编写jsp页面, 然后由web server(weblogic、tomcat)在运行时动态的生成 浏览器需要做的事情是渲染页面、和执行js控制页面的逻辑 * 开发人员编写jsp。然后将jsp文件打包部署到web server上面 在运行时,浏览器请求一个页面,web server 动态的编译对应的jsp,然后在执行这个jsp生成html返回给浏览器 浏览器渲染html的内容,生成最终的用户可见的页面 * 开发人员用java语言编写页面,然后使用GWT编译器 讲java代码编译成javascript代码 然后讲编译好的javascript内容部署到web server上面 浏览器请求一个页面的时候,web server直接将这个js返回给浏览器,然后浏览器执行返回的js代码,动态的渲染成页面 * 可以简单的认为GWT 就是web开发中的高级语言 Javascript、html就是web开发种的汇编语言 高级语言和汇编语言可以做同样的事情,但是高级语言比汇编语言开发效率更高,维护成本也低 再加上编译器的支持,性能上也比手写的低级语言 效率更高 * Gwt在编译java代码的时候会帮我们做下面几件事 1.语法检查 2.静态类型检查 3.优化 4.生成目标代码 语法检查和静态类型检查可以帮我们更早的发现问题 优化的代码可以带来更快的执行速度 * Gwt用oo的方法论将所有的页面元素抽象成对象 * 例如录入域在html中 input标签,在gwt种要显示一个input域则需要new 一个TextBox 相应的如果要设置这个Input域的最大长度,是否只读等属性,则需要调用setReadOnly 和setMaxLength 方法,就像我们编写后台代码时设置 对象属性一样 * Gwt为我们提供了丰富的界面库,从最基本的按钮,录入框 到比较复杂的日期选择空间,对话框,模态窗口,富文本编辑器,SuggestBox等 这些组件都可以直接使用,不需要多编写一行代码 * GWT将所有的UI组件抽象成不同的widget(窗口小部件), 所有的组件都继承自Widget这个类,他们都有相同生命周期管理,事件分发,布局方式 在gwt中可以随意组合这些widget以生成更加复杂和个性化的组件 * 基于gwt的组件开发都是面向对象的,我们可以组合gwt提供的基本控件制作出满足我们要求的特殊组件 并且这些组件可以很方便的在我们的项目中重用,甚至我们可以将编写好的组件打成jar,提供给别的项目使用 这一切都非常简单 * 在gwt中布局也非常简单,gwt提供了几种常用的布局 例如列式布局,行式布局,绝对布局,框架布局,流式布局,栈式布局等 * Gwt使用css来定义控件的样式,这样做可以让美工和开发人员职责分离 美工和开发人员可以互不干扰的工作 * Model-View-Controller concept. The solid line represents a direct association, the dashed an indirect association via an observer (for example). GWT还可以给我们带来只有桌面程序才有的MVC设计模式,可以做到彻底将页面、模型、和控制器分开 GWT底层提供了强大的事件分发模型,可以方便的协调视图和控制器之间的交互 控制器通过在视图上增加各种事件监听器,松耦合的获得视图的变化 控制器也可以自助的触发特定的事件,通知视图模型的变化 * * Gwt生成的javascript代码,可以做到跨平台跨浏览器兼容,无需开发人员写一行代码 使用gwt编写的页面由于使用了相同的控件库,所以风格行为都会表现一致 最重要的是gwt编写的页面是完全ajax的,不会因为数据改变而导致页面刷新,用户体验比较好 * 刚才我们只是讲了如何使用gwt来描述页面,但是web应用程序还有另外一个重要的部
文档评论(0)