<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)

    最新隨筆

    搜索

    •  

    積分與排名

    • 積分 - 86472
    • 排名 - 666

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 日本免费网址大全在线观看| 亚洲无吗在线视频| 亚洲成a人片在线观看无码专区| 亚洲熟妇少妇任你躁在线观看无码| 亚洲AⅤ优女AV综合久久久| 国产成人无码a区在线观看视频免费| 成人免费在线观看网站| 亚洲人成影院在线| 国产偷国产偷亚洲清高动态图| 亚洲欧洲自拍拍偷精品 美利坚 | 羞羞漫画小舞被黄漫免费| 国产精品亚洲一区二区三区久久| 亚洲精品色在线网站| 日韩一级片免费观看| www一区二区www免费| 国产色爽免费无码视频| 99re在线这里只有精品免费| 亚洲黄色片免费看| 成年女人午夜毛片免费视频 | 久久久久免费看成人影片| 99re热精品视频国产免费| 免费看国产成年无码AV片| 在线视频免费国产成人| 久久精品亚洲福利| 亚洲国产成人精品不卡青青草原| 亚洲最新在线视频| 亚洲AV成人片无码网站| caoporn成人免费公开| 久久国产乱子伦精品免费一| 日韩亚洲国产高清免费视频| 日本无卡码免费一区二区三区| 亚洲男人在线无码视频| 亚洲AV人无码激艳猛片| 亚洲自偷自偷在线成人网站传媒 | 999zyz**站免费毛片| 亚洲免费日韩无码系列| 国产精品网站在线观看免费传媒| **aaaaa毛片免费同男同女| 67194成是人免费无码| 亚洲精品色婷婷在线影院| 亚洲a在线视频视频|