Servlet 知识点(一) -- 异步请求Servlet

Servlet 传值到 jsp 一般是通过

req.setAttribute("snsUserInfo", snsUserInfo);
req.getRequestDispatcher("webInfo.jsp").forward(req, resp);

传递到指定 jsp
然后在页面通过 java 代码的方式获取

<%@ page import="com.newtec.weixin.pojo.SNSUserInfo,java.lang.*"%>
  <% 
        // 获取由OAuthServlet中传入的参数
        SNSUserInfo user = (SNSUserInfo)request.getAttribute("snsUserInfo"); 
       // String state=request.getAttribute("state").toString();
        if(null != user) {
    %>

但是异步加载并不允许我们在返回时跳转页面 , 这样非异步的数据会全部丢失 , 但是 Servlet 给我们提供了

PrintWriter pw = response.getWriter();
pw.print(object);

方法 . 我们请求这个 servlet ,返回的将是 print 出去的 object 数据
JSP 代码

$.ajax({
type : "GET",
url : "http://f67d5974.ngrok.io/souvx/userServlet",
datatype : "json",
success : function(result) {
alert(result);//将弹出返回的object数据
}

然后 web.xml 配置映射信息即可

 <servlet>
        <servlet-name>userServletservlet-name>
        <servlet-class>com.newtec.weixin.servlet.UserServletservlet-class>
    servlet>
    <servlet-mapping>
        <servlet-name>userServletservlet-name>
        <url-pattern>/userServleturl-pattern>
    servlet-mapping>

你可能感兴趣的:(servlet)