<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 30,  comments - 85,  trackbacks - 0

    Ajax 的使用

    ?????? 今天終于揭開了那個一直讓我神往的 ajax 技術的面紗。這里用的 dwr 實現的 ajax 技術。好了,現在我們看看要想在你的 j2ee 項目中使用 dwr 該怎么辦吧!由此也揭開我們的第一章。

    1????????? Dwr 的配置和使用

    ?????? 首先我們看看如何配置 dwr 呢?很簡單。把人家的 jar 包拷貝到你的 lib 目錄下啊。看過一些資料,一些人說: dwr 必須要配置 bsf-2.3.jar , beanshell-1.3.0 。其實不然,只要把 dwr.jar 加入就可以了。

    ??? 第二步:配置 web.xml

    ?????? < servlet >

    ??????? < servlet-name > dwr-invoker </ servlet-name >

    ??????? < display-name > DWR Servlet </ display-name >

    ??????? < description > Direct Web Remoter Servlet </ description >

    ??????? < servlet-class > uk.ltd.getahead.dwr.DWRServlet </ servlet-class >

    ??????? < init-param >

    ??????????? < param-name > config </ param-name >

    ??????????? < param-value > WEB-INF/dwr.xml </ param-value >

    ??????? </ init-param >

    ??????? < init-param >

    ??????????? < param-name > debug </ param-name >

    ??????????? < param-value > false </ param-value >

    ??????? </ init-param >

    ??????? < init-param >

    ??????????? < param-name > scriptCompressed </ param-name >

    ??????????? < param-value > false </ param-value >

    ??????? </ init-param >

    ??????? < load-on-startup > 8 </ load-on-startup >

    </ servlet >

    < servlet-mapping >

    ??????? < servlet-name > dwr-invoker </ servlet-name >

    ??????? < url-pattern > /dwr/* </ url-pattern >

    </ servlet-mapping >

    ?????? 好了,因為你在 web.xml 下配置了 :

    ??????????? < param-name > config </ param-name >

    ??????????? < param-value > WEB-INF/dwr.xml </ param-value >

    ? ? 那么就要在 web-Inf 下建立一個 dwr.xml 文件。

    ??? 下面我們看看 dwr.xml 文件吧:

    <dwr>

    ??? <allow>

    ??????? <create creator="new" javascript="ApartmentDAO" class="dwr.sample.ApartmentDAO">

    ??????????? <include method="findApartments"/>

    ??????????? <include method="countApartments"/>

    ??????????? <include method="getDate"/>

    ??????? </create>

    ? </allow>

    </dwr>

    ?????? 是不是很簡單,所有的 <create></create> 之間的代碼就是配置 ajax 的一些屬性,

    其中 creator= new 表示類的實例是 new 出來的。后面的 include 包含的就是開放給 dwr 可以通過 javascript 訪問的類。 Javascipt 中的值就是你要在 jsp 頁面編寫的 javaScript 代碼中使用的函數名。這些都不難可以理解其意思。

    這樣我們就可以在外面的 jsp 頁面上使用了。

    ??? 現在看看 jsp 是怎么樣樣的吧 ! 這里只把關鍵的部分拿出來分析以下:

    <script src='<%request.getContextPath()%>/dwr/interface/ApartmentDAO.js'></script>

    <script src='<%request.getContextPath()%>/dwr/engine.js'></script>

    <script src='<%request.getContextPath()%>/dwr/util.js'></script>

    <script>

    function date(guid) {

    ??? ApartmentDAO.getDate(loadTotal2,guid);

    ?}?

    ?function loadTotal2(data) {

    ??? document.getElementById("today").innerHTML = data;

    ? }

    </script>

    再看看內部的 java 類的部分代碼:

    public class ApartmentDAO {

    public String getDate(String guid){

    ???? Date date =? new Date();

    ???? return date.toString();

    ? }

    }

    這個 getDate() 方法返回的是當前的系統時間,很簡單。然后通過在 dwr.xml 聲明后可以在 jsp 頁面中使用 ApartmentDAO.getDate(loadTotal2,guid); 來調用 ApartmentDAO 中的方法了,看他調用的好像有點怪異,明明 ApartmentDAO 中只有一個參數啊。這里用到 javascript 的回掉了。 其實是通過 javascript 的回掉將類里面的返回值在 function loadTotal2(data) 中使用。這里的參數 data 就是 java return 出來的值,這樣我們就可以得到 java 類中的返回值后寫一些 javascript 了。

    以上就完成了簡單的 ajax 的使用了,通過這個簡單的例子是不是理解 ajax 技術了呢。當然還不夠,但這也算是我們的突破口吧,有這樣的一會試驗后,后面的 ajax 就不是那么神秘呢,歸根到底他不就是“ javascript 前臺調用后臺 java 類”嗎?

    2????????? 注意要點

    首先 web.xml 一定要配置正確, servlet 一定要正確。

    Dwr.xml 中配置類和方法一定要正確。

    Jsp 中我們要注意以下一些內容:

    <script src='<%request.getContextPath()%>/dwr/interface/ApartmentDAO.js'></script>

    <script src='<%request.getContextPath()%>/dwr/engine.js'></script>

    <script src='<%request.getContextPath()%>/dwr/util.js'></script>

    其中:

    <script src='<%request.getContextPath()%>/dwr/engine.js'></script>

    <script src='<%request.getContextPath()%>/dwr/util.js'></script>

    是一定不能忘的,注意前面我們還要加上 <%request.getContextPath()%> 防止你是在其他的 context 下使用時不正確了,這個細節我以前沒有注意,實在是枉弄了半天,以后不能這么粗心大意了。第一句也必須加上,注意 js 的文件名要和類名一致。

    好了,注意上面幾個部分 dwr 的使用就可以非常輕松了。今天的思考就到這里了。

    ?

    posted on 2006-09-15 15:24 安文豪 閱讀(457) 評論(0)  編輯  收藏 所屬分類: j2ee

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     

    <2025年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿(6)

    隨筆檔案(28)

    文章分類(3)

    文章檔案(4)

    最新隨筆

    搜索

    •  

    積分與排名

    • 積分 - 86493
    • 排名 - 666

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 国产在线观看无码免费视频| 青青草a免费线观a| 91大神亚洲影视在线| 岛国片在线免费观看| 色吊丝性永久免费看码| 久久亚洲精品11p| 亚洲综合伊人久久综合| 久久w5ww成w人免费| 黄色三级三级三级免费看| 久久亚洲综合色一区二区三区| 无码乱肉视频免费大全合集| 另类专区另类专区亚洲| 亚洲精品免费观看| 任你躁在线精品免费| 亚洲中文字幕AV每天更新| 国产亚洲精品资在线| 免费无码精品黄AV电影| 皇色在线免费视频| 亚洲性色AV日韩在线观看| 亚洲成a人片在线观看无码| 色视频色露露永久免费观看| 你懂的免费在线观看网站| 亚洲av色香蕉一区二区三区蜜桃| 亚洲av日韩av无码黑人| 国产又大又黑又粗免费视频| 2020因为爱你带字幕免费观看全集 | 亚洲av最新在线观看网址| 亚洲国产成人高清在线观看| 免费观看毛片视频| 91大神在线免费观看| 国产精品无码免费专区午夜| 亚洲精品无码专区久久| 西西人体44rt高清亚洲 | 免费乱码中文字幕网站| 最近中文字幕高清免费中文字幕mv | 西西大胆无码视频免费| 东北美女野外bbwbbw免费| 精品在线视频免费| 亚洲成a人片在线看| 亚洲视频2020| 久久久影院亚洲精品|