servlet返回数据的方法

来源:互联网 发布:留学中介 知乎 编辑:程序博客网 时间:2024/06/15 09:31

servlet返回数据的方法

方法

  1. RequestDispatcher.forward()界面跳转
    HttpSession  session =request.getSession();        Object obj = session.getAttribute (LoginConstants.LOGIN_USER);        if (null != obj)        {            session.removeAttribute (LoginConstants.LOGIN_USER);        }        /**        * 方法一:数据放路径里(只有少量基本数据可用)        */        RequestDispatcher dispatcher = request.getRequestDispatcher("clearUserInfo.html?flag=1");       /**        * 方法一:数据放request        */        //我们要传到前台的实体         Object result = new Object();         //转换用的实体        ObjectMapper mapper = new ObjectMapper();          //writeValueAsString就是把实体转换成了json字符串;        request.setAttribute("returnMessage", mapper.writeValueAsString(result));        dispatcher.forward(request, response); 
  1. 以字符流或字节流输出返回值,前台在接收是要以字符串的形式,如Ajax的datatype需是“text”
    ,返回json字符串形式…
            PrintWriter out = response.getWriter();            ServletOutputStream out = response.getOutputStream();            out.write("[{\"id\":1,\"name\":default}]");            out.flush();            out.close();       
  1. ObjectMapper写返回值

    // 输出信息PrintWriter out = response.getWriter();Object result = new Object();// jackson核心对象ObjectMapper objectMap = new ObjectMapper();objectMap.writeValue(out, result );快捷键

相关jar包

jackson-core-2.2.3.jar
jackson-annotations-2.2.3.jar
jackson-databind-2.2.3.jar