中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

JSON-RPC-Java 和DWR比較(轉)

發布時間:2020-08-08 18:32:47 來源:ITPUB博客 閱讀:180 作者:heying1229 欄目:編程語言

當前在以Java為后臺的AJAX框架中,比較有名兩個是JSON-RPC-Java 和DWR。

Swato與他們的共同之處是實現了JavaScript與Java 對象間的數據轉換與遠程方法調用。從各自提供的unitTest Demo可以看到這一實現的支持能力基本是相同的。

各自的差異主要在以下幾個方面。

1.為開發人員開發前臺JavaScript提供的支持。

由于采用AJAX框架后,很多View和Control的代碼需要轉移到前臺用JavaScript實現。然而JavaScript的編程畢竟是比較痛苦的。 在JSON-RPC-Java中,從服務器返回到前臺的雖然是JSON--JavaScript對象,但是他沒有提供組件幫助開發人員處理這些對象。 對于返回XML的框架,一句一句書寫DOM層次訪問是比較痛苦的。

而對于HTML DOM的操作,也是比較痛苦的,所以所以DWR提供了一系列DWRUtils來幫你減輕這一部分工作。但是對于一些需要更加靈活的View處理,利用DWRUtils仍然感覺不夠用。

在Swato中,客戶端接受的數據可以是JSON(Swato的后臺是直接把Java對象映射成JSON),也可以是XML(你可以從遠端URL中獲取XML, 它在Swato客戶端引擎中被轉化為JSON,參見RSS Reader的例子)。所以對于開發人員來說,它在客戶端所要關心的只是JavaScript對象。(結構與Java對象或XML結構對應)。然后利用Swato提供的一些View組件(AutoSuggest, Select, Form)進行渲染。對于自定義性比較強的View控件,你可以在前端使用Template引擎 (來自TrimPath,類似于Velocity的簡單語法)。甚至可以把它封裝成你自己的組件,只要在其中實現gotResult與gotError函數,便可以很輕松的與Swato遠程調用功能集成。參見(CRUD例子中的代碼。)

Swato力圖在客戶端為開發人員減輕JavaScript代碼的編碼量,其實Swato的unitTest例子來自于DWR。 類似的測試功能,在邏輯控制上,DWR用了幾百行的JavaScript而在Swato上只需要幾十行。

不管用哪一個框架,由于JavaScript缺乏強大的編輯器和調試器,所以開發起來還是比較麻煩,對此,Swato在前臺集成了fvlogger, 相當于Java方面的Log4j,為Js的開發帶來更大便利。

2.后臺服務的注冊與訪問控制方式。

在后臺服務的注冊方式上,JSON-RPC-Java默認的是在Session中的Bridge里注冊要使用的Java對象。這種方式有很多的限制,比如使用的時候需要JSP或者Servlet程序中來進行注冊。形式不夠靈活,服務的周期管理也比較麻煩。這是JSON-RPC-Java被批評的重點。



DWR有了很大的進步,它用dwr.xml將你需要暴露的服務明確地定義在其中,在前臺的JavaScript中,用

阿克陶县| 子洲县| 乐东| 平定县| 宜兰县| 资阳市| 洪江市| 三门峡市| 吴桥县| 洛隆县| 湖口县| 红桥区| 陕西省| 望奎县| 南木林县| 神池县| 大竹县| 阳高县| 含山县| 邵阳县| 崇左市| 连平县| 孟州市| 宁陕县| 南部县| 改则县| 保德县| 天祝| 贵溪市| 亚东县| 华容县| 广丰县| 锡林浩特市| 桐庐县| 扎赉特旗| 滨海县| 保定市| 丰台区| 绥阳县| 黎川县| 碌曲县|