`
Lives
  • 浏览: 201341 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

dwr 获取session,request,response

阅读更多
在DWR中需要用到session,request等这些东西的时候,可以用以下方法获取:
1. 使用DWR的API (很多人都不推荐这种做法,经测试,使用起来肯定没问题)
WebContext ctx = WebContextFactory.get();
ctx.getSession()
ctx.getHttpServletRequest()
...

2. 在Java的服务方法中定义这些类型的参数,让DWR自动传入相应的对象:
HttpServletRequest,HttpServletResponse,HttpSession,ServletContext,ServletConfig.
示例如下:
Java端定义方法: saveOrder(String id, String name, HttpSession session)
Javascript调用: OrderService.saveOrder(jsID,jsName,callBack)
注意,这里不需要传入session这个参数,DWR会自动传入,在Java端可以直接使用.



DWR中取得session等信息

据说在其它一些ajax的产品中没有提供对request、response和session的获取,需要自己写程序去取得,但在dwr中就完全可以没有这个顾虑了。在dwr中有一个WebContextFactory类,静态调用这个类的get()方法就可以得到dwr的另一个类:WebContext。在WebContext中,你可以看到getHttpServletRequest()、getHttpServletResponse()、getSession()等方法,通过它们就可以顺利地得到request、response和session了。


java 代码
public class Context {       
      
       private static WebContext getContext(){       
      
              return WebContextFactory.get();       
      
       }       
      
       public static HttpServletRequest getRequest(){       
      
              return getContext().getHttpServletRequest();       
      
       }       
      
       public static HttpServletResponse getResponce(){       
      
              return getContext().getHttpServletResponse();       
      
       }       
      
       public static HttpSession getSession(){       
      
              return getContext().getSession();       
      
       }       
      
}       
分享到:
评论
1 楼 langgh 2012-09-04  
你好,如果我不用dwr的方法而是用普通的方法写WebContextFactory.get()得出来的是空,怎么解决?

相关推荐

    DWR中取得session等信息.doc

    在 DWR 中,可以使用 WebContextFactory 工厂类来获取 WebContext 对象,然后通过该对象获取 Session、Request 等信息。下面是一个示例代码: ```java WebContext ctx = WebContextFactory.get(); HttpSession ...

    DWR与Jsp内置对象关系

    1. **数据传递**:DWR可以调用JSP中的Java方法,这些方法可能依赖于request、session或application中的数据。通过DWR,客户端可以直接操作服务器端的数据,这使得JSP内置对象的数据能在异步请求中得以利用。 2. **...

    dwr中文帮助文档

    JSP有九个内置对象,它们分别是:`request`、`response`、`session`、`application`、`pageContext`、`out`、`config`、`page`和`exception`。这些对象提供了与HTTP请求、响应、会话、应用范围内的数据交互的功能。...

    DWR3 访问WEB元素的两种方法实例详解

    DWR会在后台自动获取并填充这些参数,使得开发者可以直接在方法内部使用它们。需要注意的是,通常这些WEB元素作为方法的最后一个参数,因为这符合SpringMVC的规范,但并不表示其他位置不可以,只是可能需要额外的...

    JSP+Servle+Ajaxt的供应商管理系统(完整版)

    开发者可以使用JSP的内置对象如request、response、session和application等来处理HTTP请求和响应,以及管理用户的会话状态。 **Servlet**: Servlet是Java EE中用于处理HTTP请求的Java类。在JSP+Servlet应用中,...

    采用ajax实现的图片验证码

    request.getSession().setAttribute("code",code);//把生成的验证码信息,存储到session中,登录的时候,用来作判断 -------------------------------------产生干扰线条 for(int i=0;i;i++){ int x1 = rd....

    技术博客珍藏版

    - JSP内置对象与作用域:JSP的九大内置对象(如request、response、session等)和四大作用域(page、request、session、application)是Web开发中的基础概念。 3. **Spring框架**: - Spring MVC与Hibernate整合...

    中软笔试题.pdf

    - Ajax(Asynchronous JavaScript and XML)允许通过JavaScript异步地从服务器获取数据,无需刷新整个页面。它通过创建XMLHttpRequest对象,发送HTTP请求,然后处理服务器返回的数据,更新DOM(文档对象模型)来...

    java知识点汇总学习路线与笔记

    - **Request、Response常用方法**:Request和Response对象用于获取请求信息和发送响应信息。 - **ServletContext类**:用于存储和检索有关Web应用程序的信息。 - **HTTP协议(GET,POST)**:GET和POST是最常用的...

Global site tag (gtag.js) - Google Analytics