本站不再更新,歡迎光臨 java開發(fā)技術(shù)網(wǎng)
          隨筆-230  評論-230  文章-8  trackbacks-0

          我們在實(shí)際的 web 應(yīng)用開發(fā)過程中,在用戶登錄后會(huì)向 session 中塞入一些信息(例如用戶信息,菜單信息等),在頁面提交后,會(huì)從 session 中取出這些信息,拼成完整的業(yè)務(wù)記錄,保存到數(shù)據(jù)庫中。此時(shí)就要求 DWR 可以與 Servlet 對象通信。

          其實(shí) DWR 已經(jīng)考慮好了,在 DWR1.1 中可以利用 uk.ltd.getahead.dwr.WebContext uk.ltd.getahead.dwr.WebContextFactory 來和 Http Servlet 的標(biāo)準(zhǔn)對象進(jìn)行通信,包括:

          l???????? HttpServletRequest

          l???????? HttpServletResponse

          l???????? HttpSession

          l???????? ServletContext

          l???????? ServletConfig?

          ?具體調(diào)用的方法如下:

          import ?javax.servlet.http.HttpServletRequest;?

          import ?uk.ltd.getahead.dwr.WebContext;?

          import ?uk.ltd.getahead.dwr.WebContextFactory;
          ?import org.directwebremoting.WebContextFactory; //DWR2.0改成這樣

          // /?

          WebContext?ctx?
          = ?WebContextFactory.get();?

          HttpServletRequest?req?
          = ?ctx.getHttpServletRequest();?
          ???? WebContext 是使用ThreadLocal保存的,你可以看一下uk.ltd.getahead.dwr.impl.DefaultWebContextBuilder源碼,所以可以在任何地方使用它,例如在上一篇的demo中進(jìn)行測試如下:
          頁面里給session設(shè)置值
          <%@?page?contentType="text/html;?charset=GBK"?%>?

          ??

          <%?

          System.out.println(
          "This?is?DWR?servlet?object!");?

          ??

          session.setAttribute(
          "dwr","love?dwr");?

          %>?
          DWR要調(diào)用的類文件
          package?test.dwr;?

          ??

          import?javax.servlet.http.HttpServletRequest;?

          ??

          import?uk.ltd.getahead.dwr.WebContext;?

          import?uk.ltd.getahead.dwr.WebContextFactory;?

          ??

          public?class?MessageDao?{?

          ????
          public?Message?save(Message?message)?{?

          ??

          ????????WebContext?ctx?
          =?WebContextFactory.get();?

          ????????HttpServletRequest?req?
          =?ctx.getHttpServletRequest();?

          ????????

          ??

          ????????System.out.println(
          "========HttpServletRequest?Begin=======");?

          ????????System.out.println(
          "req:"?+?req.getRemoteHost());?

          ????????System.out.println(
          "req-session:"?+?req.getSession().getAttribute("dwr"));?

          ????????System.out.println(
          "text:"?+?req.getParameter("text"));?

          ????????System.out.println(
          "from:"?+?req.getParameter("from"));?

          ????????System.out.println(
          "=========HttpServletRequest?End========");?

          ??

          ????????System.out.println(
          "========Lucky?DWR?Begin=======");?

          ????????System.out.println(
          "text:"?+?message.getText());?

          ????????System.out.println(
          "from:"?+?message.getFrom());?

          ????????System.out.println(
          "=========Lucky?DWR?End========");?

          ??

          ????????
          return?message;?

          ????}?

          ??

          ????
          public?Message?get()?{?

          ????????
          return?new?Message("This?is?the?first?dwr?demo!",?"test");?

          ????}?

          }?
          posted on 2006-11-21 23:01 有貓相伴的日子 閱讀(2873) 評論(0)  編輯  收藏 所屬分類: dwr
          本站不再更新,歡迎光臨 java開發(fā)技術(shù)網(wǎng)
          主站蜘蛛池模板: 陇川县| 永安市| 扎囊县| 广元市| 应城市| 大理市| 惠安县| 乐业县| 云林县| 台东市| 永年县| 潍坊市| 龙山县| 延津县| 凉城县| 报价| 河西区| 平顶山市| 息烽县| 江永县| 桦南县| 北京市| 汝州市| 绵阳市| 介休市| 兴海县| 龙口市| 随州市| 义乌市| 阳谷县| 石门县| 平舆县| 昌江| 汕尾市| 沈丘县| 当涂县| 合肥市| 乌鲁木齐市| 驻马店市| 宜丰县| 广平县|