国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看
打開APP
未登錄
開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服
開通VIP
首頁
好書
留言交流
下載APP
聯(lián)系客服
Java視線論壇--DWR學(xué)習(xí)--讀了遍1.1官方文檔,提取的些東西。
漂在北方的狼
>《DWR》
2006.03.22
關(guān)注
1、java的方法避免用 java 和 javascript的關(guān)鍵字。 如 try()方法 或 delete()方法。
2、在你的java類中不要出現(xiàn)重載 avoid overloaded methods.
3、在生產(chǎn)環(huán)境下,你可以把deprecated.js engine.js util.js 合并成一個,并放到web容器內(nèi),直接在htm,jsp中引用。 (對于java代碼轉(zhuǎn)換成的javascript代碼也可以這么做,免得每次生成javascript代碼浪費(fèi)時間)
4、研究一下Bean Converters。POJOjava對象必須嚴(yán)格按照 getProperty() setProperty()定義。Bean Converters是按照 java對象的 get set方法工作的。DWR1.1加了Object Converters,是按private int property;這類屬性工作的。
<convert converter="bean" match="example.Fred"/>
<param name="exclude" value="property1, property2"/>
</convert>
當(dāng)你這樣配置時,java對象轉(zhuǎn)化成的javascript對象不包括property1和property2。
<convert converter="bean" match="example.Fred"/>
<param name="include" value="property1, property2"/>
</convert>
反過來java對象轉(zhuǎn)化成的javascript對象直包括property1和property2。
5、<convert converter="collection" match="java.util.Collection"/>
<convert converter="map" match="java.util.Map"/>
這也是容易出問題的地方.
如
package example;
public class Person{
private String name;
get ... set
private List relationPerson;
public List setRelationPerson(List relationPerson){
this.relationPerson=relationPerson;
}
}
<convert converter="bean" match="example.Person"/>
</convert>
<signatures>
<![CDATA[
import java.util.Set;
import example.Person;
Person.setRelationPerson(List<Person>);
]]>
</signatures>
在jdk1.5泛型中有寫法區(qū)別
6、另外在Set,List等做為方法參數(shù)時也會出現(xiàn)混淆。返回集合類型不會出現(xiàn)問題,想想就知道了。
如 在Test類中有 public Set testBeanSetParam(Set test) 這個方法,客戶端得到的javascript方法可能是Test.testBeanSetParam(p0,callback);當(dāng)我們javascript調(diào)用這個方法時,鬼才知道怎么確定p0的類型,也不可能知道Set集合中該放什么類型的java對象,所以dwr的 special signatures syntax 確定這些集合和內(nèi)容的類型
<signatures>
<![CDATA[
import java.util.Set;
import example.Test;
Test.testBeanSetParam(Set<TestBean>);
<!--Test.stringStringMapParam(Map<String, String>);-->
]]>
</signatures>
7、Creators
<allow>
<create creator="..." javascript="..." scope="...">
<param name="..." value="..."/>
<auth method="..." role="..."/>
<exclude method="..."/>
<include method="..."/>
</create>
...
</allow>
為了更少的暴露業(yè)務(wù)方法,最好配置include屬性。
dwr支持new ,script,struts....幾種集成方法,也支持static方法的調(diào)用,我覺得最好的是spring,其他感覺是處理遺留問題處理。
8、engine_js 作為dwr框架客戶端核心,主要完成xmlHttp或iframe的構(gòu)造,我們沒必要關(guān)心它如何實(shí)現(xiàn)。有幾點(diǎn)創(chuàng)新的我們可以學(xué)習(xí)下。
Call Batching 我們可以把幾個客戶端請求一起放送到服務(wù)器端,減少了網(wǎng)絡(luò)交互,但要注意依存關(guān)系和他們處理的順序。
Call Ordering 同步異步調(diào)整。一般用默認(rèn)的就好了。注意依存關(guān)系。
Remoting Hooks 鉤子,"small AOP"
依存關(guān)系解釋。 如果 request1() request2()兩個業(yè)務(wù)邏輯方法,request2方法需要用到request1方法從服務(wù)器端返回的結(jié)果。如果調(diào)用request2時,request1還沒處理或還沒請求。 下拉框連動可能有這個問題。
9、util.js propotype.js有些重復(fù),這讓我很難受。只能改代碼了,可別壞了開元協(xié)議。
10、如果你的回調(diào)方法想加其他參數(shù)
var dataFromBrowser = ...;
var callbackProxy = function(dataFromServer) {
callbackFunc(dataFromServer, dataFromBrowser);
};
var callMetaData = { callback:callbackProxy };
Remote.method(params, callMetaData);
11、dwr1.1
1.1只能算一個bug消除版本,沒有什么大的功能調(diào)整。源代碼結(jié)構(gòu)做了些調(diào)整。2.0有新的特征加入。
It has a far broader scope; the major new features are accessibility enhancements, and what now appears to be called ‘Comet‘. 在文檔中提到了“Comet”,估計與DWR2.0作者想法類似。
http://forum.javaeye.com/viewtopic.php?t=19089
樓主叫server push。
http://alex.dojotoolkit.org/?p=545
給正名了,叫 Comet
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請
點(diǎn)擊舉報
。
打開APP,閱讀全文并永久保存
查看更多類似文章
猜你喜歡
類似文章
dwr學(xué)習(xí)
DWR的學(xué)習(xí)文檔(Hello World,類型轉(zhuǎn)換,Spring,Annotation)
dwr.xml詳解
ajax之旅--dwr探密
DWR學(xué)習(xí)心得
DWR學(xué)習(xí)
更多類似文章 >>
生活服務(wù)
首頁
萬象
文化
人生
生活
健康
教育
職場
理財
娛樂
藝術(shù)
上網(wǎng)
留言交流
回頂部
聯(lián)系我們
分享
收藏
點(diǎn)擊這里,查看已保存的文章
導(dǎo)長圖
關(guān)注
一鍵復(fù)制
下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!
聯(lián)系客服
微信登錄中...
請勿關(guān)閉此頁面
先別劃走!
送你5元優(yōu)惠券,購買VIP限時立減!
5
元
優(yōu)惠券
優(yōu)惠券還有
10:00
過期
馬上使用
×