Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
Submit search
EN
RC
Uploaded by
Roy Chen
PPTX, PDF
89 views
Gwt rpc
AI-enhanced description
本文档介绍了GWT RPC的实现,包括模块与入口点的概念。讨论了RPC与传统表单提交的优缺点,并提到Ajax的作用和使用方式。文档还概述了创建前后端接口、实现后端逻辑及事件处理的步骤。
Engineering
◦
Read more
0
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 31
2
/ 31
3
/ 31
4
/ 31
5
/ 31
6
/ 31
7
/ 31
8
/ 31
9
/ 31
10
/ 31
11
/ 31
12
/ 31
13
/ 31
14
/ 31
15
/ 31
16
/ 31
17
/ 31
18
/ 31
19
/ 31
20
/ 31
21
/ 31
22
/ 31
23
/ 31
24
/ 31
25
/ 31
26
/ 31
27
/ 31
28
/ 31
29
/ 31
30
/ 31
31
/ 31
More Related Content
PPTX
ASP.NET MVC 6 新功能探索
by
Will Huang
PPTX
快快樂樂學會 Angular 2 網站開發框架 (Modern Web 2016)
by
Will Huang
PPTX
Asp.net core v1.0
by
chang kuo-chao
PPTX
How to building WEKA model and automatic test by command line
by
Phate334
PPTX
ASP.NET 5 的創新與變革
by
Will Huang
PPTX
TypeScript 開發實戰:開發即時互動的 html5 websocket 聊天室應用程式
by
Will Huang
PPTX
Angular 2 Taiwan 小聚 Forms 介紹
by
Jeff Wu
PPTX
Angular 2 表單的處理與驗證
by
Jeff Wu
ASP.NET MVC 6 新功能探索
by
Will Huang
快快樂樂學會 Angular 2 網站開發框架 (Modern Web 2016)
by
Will Huang
Asp.net core v1.0
by
chang kuo-chao
How to building WEKA model and automatic test by command line
by
Phate334
ASP.NET 5 的創新與變革
by
Will Huang
TypeScript 開發實戰:開發即時互動的 html5 websocket 聊天室應用程式
by
Will Huang
Angular 2 Taiwan 小聚 Forms 介紹
by
Jeff Wu
Angular 2 表單的處理與驗證
by
Jeff Wu
What's hot
PPTX
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
by
Will Huang
PPTX
ASP.Net MVC Framework
by
國昭 張
PPTX
Visual Studio 2017 新功能探索 (Study4.TW)
by
Will Huang
PPTX
Android线程简介
by
朋 王
PPTX
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
by
Will Huang
PPTX
JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)
by
Will Huang
PDF
2015.07.22 新人報告(3)
by
Chih-Wei Chuang
PPTX
Vue
by
國昭 張
PPTX
Study4.TW .NET Conf 2018 - Fp in c#
by
Chieh Kai Yang
PDF
React js入門教學
by
TaiShunHuang
PPTX
Blazor 與 Radzen 同行
by
Jimmy Ho
PPTX
Nuget介紹- 如何使用和建立自己的package
by
Alan Tsai
PPTX
保哥線上講堂:利用 StyleCop 撰寫一致的 C# 程式碼風格
by
Will Huang
PPTX
React js
by
國昭 張
PPT
Node.js在淘宝的应用实践
by
taobao.com
PPTX
Angular 7 全新功能探索 (Angular Taiwan 2018)
by
Will Huang
PPTX
Frontend Devops at Cloudinsight
by
Yan Wang
PDF
How to upgrade_ror3_to_ror4
by
Wei-Yi Chiu
PPTX
Angular.js & ASP.NET in Study4
by
Kyle Shen
PPTX
AUGT 社群小聚 - Angular Optimize Performance NgZone 的原理與應用
by
Jeff Wu
使用 TypeScript 駕馭 Web 世界的脫韁野馬:以 Angular 2 開發框架為例
by
Will Huang
ASP.Net MVC Framework
by
國昭 張
Visual Studio 2017 新功能探索 (Study4.TW)
by
Will Huang
Android线程简介
by
朋 王
使用 C#/Razor 開發互動式 WebAssembly 網站 (Modern Web 2018)
by
Will Huang
JavaScript 物件導向觀念入門 v.s. TypeScript 開發實戰 (微軟實戰課程日)
by
Will Huang
2015.07.22 新人報告(3)
by
Chih-Wei Chuang
Vue
by
國昭 張
Study4.TW .NET Conf 2018 - Fp in c#
by
Chieh Kai Yang
React js入門教學
by
TaiShunHuang
Blazor 與 Radzen 同行
by
Jimmy Ho
Nuget介紹- 如何使用和建立自己的package
by
Alan Tsai
保哥線上講堂:利用 StyleCop 撰寫一致的 C# 程式碼風格
by
Will Huang
React js
by
國昭 張
Node.js在淘宝的应用实践
by
taobao.com
Angular 7 全新功能探索 (Angular Taiwan 2018)
by
Will Huang
Frontend Devops at Cloudinsight
by
Yan Wang
How to upgrade_ror3_to_ror4
by
Wei-Yi Chiu
Angular.js & ASP.NET in Study4
by
Kyle Shen
AUGT 社群小聚 - Angular Optimize Performance NgZone 的原理與應用
by
Jeff Wu
More from Roy Chen
PPTX
Nfc tutorial
by
Roy Chen
PPTX
WiFi direct
by
Roy Chen
PPTX
培養深度工作力
by
Roy Chen
PPTX
Cloud service and gae for java(gae:j)
by
Roy Chen
PPTX
Phonegap入門
by
Roy Chen
PPTX
Svm and libsvm
by
Roy Chen
PPT
Phonegap tricky
by
Roy Chen
PPTX
Processing for fun
by
Roy Chen
PPTX
The Power of Variable Names
by
Roy Chen
PPTX
個資法
by
Roy Chen
PPTX
聽障朋友科技應用
by
Roy Chen
Nfc tutorial
by
Roy Chen
WiFi direct
by
Roy Chen
培養深度工作力
by
Roy Chen
Cloud service and gae for java(gae:j)
by
Roy Chen
Phonegap入門
by
Roy Chen
Svm and libsvm
by
Roy Chen
Phonegap tricky
by
Roy Chen
Processing for fun
by
Roy Chen
The Power of Variable Names
by
Roy Chen
個資法
by
Roy Chen
聽障朋友科技應用
by
Roy Chen
Gwt rpc
1.
GWT - RPC Roy
Chen
2.
• GWT –
RPC • GWT – Module and EntryPoint • implement (widget + event + RPC) • 分析優勢、劣勢、趨勢。
3.
RPC • 傳統用form做post,一定會reload或跳到別 頁才會看到新資料 (ex.
留言板) • 但是像fb,送出post後,下面會即刻showt 出你新增到db的資料,因為用了AJAX。 • Ajax (Asynchronous JavaScript and XML) • 同步,非同步? • 也就是說js在背景默默運作。 • Js <->php, js<->java, GWT-RPC: java <-> java
4.
RPC
5.
•Implement http://rpcdemo1210.appspot.com/demo.h tml
6.
Module and EntryPoint •
Module: 一套完整的功能,包含前後端,最 終編譯成 .js讓host page使用。 • EntryPoint(class): 屬於module中前端的部分, 為module中的某一功能。 Module AjaxAlert (ManyAjax) EntryPoint Class DoAlert (DoPost, DoUpdate …) Html host page demo.html
8.
Create GAE project
9.
New GWT module
10.
撰寫前端兩個interface
11.
AlertService.java (interface) • 在com.gae.client 套件下新增一個 interface。 •
此interface繼承 GWT的 RemoteService 介 面。 • 此介面不需要實 作方法內容,定 義規格就好。
12.
AlertServiceAsync.java (interface)
13.
為介面制定規格(方法) • 先不用實作方法 • 同步跟非同步兩個介面都要制定對應的方 法規格(方法名、回傳型態、引數型態)
14.
撰寫後端Servlet
15.
Add AlertServiceImpl.java
16.
實作介面方法(後端邏輯)
17.
設定 web.xml
18.
RPC 架構好了,接著要做UI跟觸發事件。
19.
Add Composite Class
(元件)
20.
Generate java code
21.
事件處理
22.
callback function
23.
Swing, android,gwt
24.
EntryPoint Class
25.
design
26.
Choose Component
27.
Auto-gen code
28.
Compile GWT project
30.
• http://rpcdemo1210.appspot.com/demo.html
31.
分析 開發android? GWT 2006就有了 GWT and
js ? GAE的優勢 (end)
Editor's Notes
#5
這張圖把PRC分成前後端,可以把左邊的部分想像成是一般前端的javascrupt。 實作RPC架構的元素有兩個前端介面跟一個後端的類別。 前端的YourService這個介面,你必須去把介面方法的規格訂出來(回傳直、方法名…),這裡還不用去實作方法的邏輯, ex. addData,getData, deleteData,…。 後端的servlet類別必須去實作YourService這個介面的方法內容,比如說如果你對應到的是YourService 中的 addData, 那就真的要去把連接資料庫、新增一筆rowdata的code寫在方法區塊裡面。 YourServuce跟YourServiceImpl對應的關希很像傳統前端js做post要有一個url的值,那後端也要有對應這個url的邏輯,在RPC中你要在web.xml紀錄段應得關西。 那最左邊的YourServiceAsync則是對應YourService的一個介面,它讓YourService裡面的方法有非同步的功能,PRC中的非同步的部分是由這個介面負責。
#10
AjaxAlert (module name)
#13
新增的AlertService是個同步的介面,GWT RPC的規格裡面規定要設計同步跟非同步兩個介面。
#14
可以先制定任一介面的方法,再用eclipse的除錯提示為另一個介面新增對應的方法。 先看AlertService, 它只有import RemoteService ,只負責跟後端servlet做溝通,沒有處理async的能力。 Path的地方,這是指這段code對應的url。 順便在這裡訂一個 方法。 右下則是只有import AsyncCallback,所以它沒有跟後端溝通的能力。 這兩個介面後面會講到怎麼結合再一起,讓前端有跟後端做非同步傳輸的功能。
#16
有了處理前端的兩個介面之後,可以開始實作後端的RPC服務程式;依GWT RPC的規格,需要把後端的程式放在{package name}.server這個package下,需要興曾一個 接著要實作後端的一個class,此class需要繼承RemoteServiceServlet,還要實作AlertService這個介面(剛剛做好的)。
#17
紅線框起來為,實作AlertService這個介面方法的區塊。 也可以說後端的邏輯就放在這裡。
#18
url-pattern : 對外定義的網址;
#21
看一下元件對應的java code Flow panel就像android 幫你訂了很多版面。
#23
在點擊後,去做非同步呼叫的動作,(就是ajax,差別在它是用java去做), 拿jquery來比較 GWT.create意思是,把傳進來的AlertService這個介面實作一個類別的概念。回傳一個實作AlertService介面的類別 因為AlertServiceAsync這個介面沒有傳輸的功能,只有負責非同步的部分,而AlertService這個介面則沒有非同步的功能,但有跟後端servlete溝通的功能。 所以這一行讓 alertService這個object有非同步而且能夠跟後端溝通。 接下來要實作alertService這個介面。 然後用泛型去指定傳進callback方法中的型態,因為Window.alert()只能船字串,所以設定字串。 然後因為這是非同步呼叫,response不一定會馬上拿到,所以用callback方法來等待,當成功就會到onSuccess。
#24
寫 android? 這是AlertClient這個元件的code,很像android,有gwt元件的宣告跟使用,還有事件處理的code。 到現在我們只做好了主要的功能,但是在gwt裡,需要有entry point類別才能該使執行。
#25
現在做好的是一個有功能元件,我們必須將這個元件加入倒entrypoint中, 新增的這個entrypoint: DoAlert是屬於module:AjaxAlert中的一個entrypoint Xml會自己添加code
#26
entryPoint可以把它看成是一個頁面,所以它也是可以設計的。 我們現在就要把剛剛做好的那一套alert元件直接方到entry point頁面裡面。
#27
現在我們要來把一開始做的元件放入entryPoint頁面中。 拉過去這個動作就是把我們剛剛做的類別new一個物件出來。
#32
非常像在開發anroid;但這樣好像跟主流的趨勢有點矛盾,因為現很流行的是用html寫手機app,但gwt是讓你有寫app的方式寫html。 而且GAE的優勢並不是GWT,GWT也早就不是新技術了,是google把gwt買下來,讓開發者有一另外一個選項。 GWT的社群當然也是有很多open source的東西可以用,但比起很多javascript library像jquery什麼的,可能還是有差距。
Download