java后台用的输出流怎么在前台用js怎么接收-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

java后台用的输出流怎么在前台用js怎么接收

2016-03-23 15:46:03 2747 1

java后台的输出流。输出的信息。后台输出信息不包含页面地址。怎么在前台页面用js完成接收信息。

取消 提交回答
全部回答(1)
  • 蛮大人123
    2019-07-17 19:11:22

    给你个例子。
    后台Java代码:

         @RequestMapping(value = "/friendLinks/friendLinksList.do")
        public void getfriendLinksList(HttpServletRequest request,
                HttpServletResponse response, ModelMap modelMap){
    
            response.setCharacterEncoding("UTF-8");
            String pageNoStr = request.getParameter("pageNo");
            Integer pageNo = 0;
    
            try {
                pageNo = Integer.valueOf(pageNoStr);
            } catch (Exception e) {
                pageNo = 0;
            }
            Page page = new Page();
            page.setPageNo(pageNo);
    
            //按分页条件查询用户
            List<FriendLinks> linksList = null;
            try {
                linksList = friendLinksService.getFriendLinksList(page);
                //将查出来的友情链接和分页信息放到json字符串中
                JSONArray jsonList = new JSONArray();
                JSONObject bj = JSONObject.fromObject(page);
                jsonList.add(bj);
                for (FriendLinks links : linksList) {
                    JSONObject obj = JSONObject.fromObject(links);
                    jsonList.add(obj);
                }
                response.getWriter().println(jsonList.toString());
                response.getWriter().flush();
                response.getWriter().close();
            } catch (Exception e) {
    
                e.printStackTrace();
            }
            return ;
        }

    JS中代码:

         function fillData(pageNo) {
        if (pageNo == "") {
            pageNo = thisPageNo;
        }
        var stateValue = $("#stateValue").val();
        var titleValue = $("#titleValue").val();
        $.ajax({
                url:contextPath + "/friendLinks/friendLinksList.do", 
                type:"POST",
                data:{
                      pageNo:pageNo,
                      stateValue:stateValue,
                      titleValue:titleValue
                     }, 
                dataType:"json", 
                beforeSend:function () {
                $("#pageTd a").remove();
        }, success:function (data) {
                var page = data[0];
                if (page.count == 0) {
                    var noDataMsg = "<tr><td colspan=\"9\" class=\"xiamian\">无相关数据</td></tr>";
                    $("#dataBody").html(noDataMsg);
                    var pageMsg = "总记录数:<strong>0</strong>"+
                                  "&nbsp;&nbsp;当前页:<strong>0/0</strong>&nbsp;&nbsp;"+
                                  "<a href='javascript:;'>首页</a>&nbsp;"+
                                  "<a href='javascript:;'>上一页</a>&nbsp;"+
                                  "<a href='javascript:;'>下一页</a>&nbsp;"+
                                  "<a href='javascript:;'>尾页</a>&nbsp;";
                                  $("#pageButtonBefore").html(pageMsg);
                } else {
                    var dataMsg = "";
                    var caozuo = "";
                    var useOrNot = "";
                    for (var i = 1; i < data.length; i++) {
                        caozuo = "";
                        caozuo = caozuo + "<a href='javascript:;' onclick='checkJump(\""+data[i].id+"\")'>查看</a>";
                        caozuo = caozuo + "<a href='javascript:;' onclick='editJump(\""+data[i].id+"\")'>修改</a>";
                        caozuo = caozuo + "<a href='javascript:;' onclick='deleteJump(\""+data[i].id+"\")'>删除</a>";
                        if(data[i].status == "0"){
    
                            status = "是";
                        }else{
                            status = "否";
                        }
                        dataMsg = dataMsg + "<tr><td>" + i + 
                                            "</td><td>" + data[i].linkName + 
                                            "</td><td>" + data[i].linkSite + 
                                            "</td><td>" + status + "</td><td>"; 
                        dataMsg = dataMsg + caozuo;                 
                        dataMsg = dataMsg + "</td></tr>";
                    }
                    $("#dataBody").html(dataMsg);
    
                    var pageMsg = "总记录数:<strong>"+page.count+"</strong>&nbsp;&nbsp;当前页:<strong>"+page.pageNo+"/"+page.totalPage+"</strong>&nbsp;&nbsp;"+
                                  "<a href='javascript:fillData(\"1\");'>首页</a>&nbsp;&nbsp;"+
                                  "<a href=javascript:fillData(\"" + page.pre + "\");>上一页</a>&nbsp;&nbsp;"+
                                  "<a href=javascript:fillData(\"" + page.next + "\");>下一页</a>&nbsp;&nbsp;"+
                                  "<a href=javascript:fillData(\"" + page.totalPage + "\");>尾页</a>&nbsp;&nbsp;";
                    $("#pageButtonBefore").html(pageMsg);
                }
        }, error:function () {
              alert("获取相关数据失败!");
        }});
        }

    其实能看出来,JS怎么接收值跟后台用什么方式传没有多大关系,关键是看传过来的值格式是啥就好了。
    传回来的是字符串,那就直接按照字符串处理,传回来的是Json格式的那就直接按照解析Json来处理。

    0 0
相关问答

0

回答

请问将java字节数组中的元素数据合并为一个对象,有没有性能更快的方法?

2021-11-12 17:22:12 138浏览量 回答数 0

0

回答

请问对java字节数组之间的元素数据相互比较,有没有性能更快的方法?

2021-11-07 13:01:31 111浏览量 回答数 0

0

回答

请问将java数组转换为列表性能最优的做法是什么?

2021-11-07 13:01:34 163浏览量 回答数 0

0

回答

请问创建java字节缓冲区ByteBuffer对象,有没有性能更快的做法?

2021-11-07 11:58:20 158浏览量 回答数 0

0

回答

请问使用java替换XML属性性能最优的做法是什么?

2021-11-07 11:09:49 151浏览量 回答数 0

0

回答

请问在java类中的方法参数上使用final关键字,是否对性能有所影响?

2021-11-12 17:17:11 162浏览量 回答数 0

0

回答

请问对java字节缓冲区ByteBuffer对象解码处理,有没有性能更快的方法?

2021-11-07 11:58:19 221浏览量 回答数 0

0

回答

请问将java字节缓冲区对象ByteBuffer转储到文件,有没有性能更快的做法?

2021-11-07 11:58:20 132浏览量 回答数 0

0

回答

请问java中将对象转换为字节数组性能最快方法的是什么?

2021-11-12 17:22:35 431浏览量 回答数 0

0

回答

请问如何对java中的HashSet集合对象进行合并处理,有没有性能更快的做法?

2021-11-07 11:58:20 266浏览量 回答数 0
+关注
蛮大人123
我说我不帅他们就打我,还说我虚伪
文章
问答
问答排行榜
最热
最新
相关电子书
更多
JS 语言在引擎级别的执行过程
立即下载
Python第五讲——关于爬虫如何做js逆向的思路
立即下载
编程语言如何演化—— 以 JS 的 private 为例
立即下载