代码行冲突问题
图中圈起来的代码不注释掉的话在console中就无法显示两个数组,并且折线图就无法显示,这是为什么?重生冲突的原因是什么?还有就是在/rt这个页面却可以显示
package com.imooc.total; import java.io.IOException; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.ServletContext; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import com.alibaba.fastjson.JSON; /** * Servlet implementation class RequestTotalServlet */ @WebServlet("/rt") public class RequestTotalServlet extends HttpServlet { private static final long serialVersionUID = 1L; /** * @see HttpServlet#HttpServlet() */ public RequestTotalServlet() { super(); // TODO Auto-generated constructor stub } /** * @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response) */ protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub ServletContext context = request.getServletContext(); List< String > timeList = (List)context.getAttribute( "timeList" ); List<Integer> valueList = (List)context.getAttribute( "valueList" ); response.setContentType( "text/html;charset=utf-8" ); // response.getWriter().println( timeList.toString() ); // response.getWriter().println( "<br/>" ); // response.getWriter().println( valueList.toString() ); Map result = new HashMap(); result.put( "timeList", timeList ); result.put( "valueList", valueList ); String json = JSON.toJSONString( result ); response.getWriter().println( json ); } /** * @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response) */ protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub doGet(request, response); } }
13
收起
正在回答
1回答
如果/rt这个页面可以显示数据,那说明前后端通信没有问题,但是关键的一点是,前端页面如何处理后端传来的数据。你要显示在console里,应该是用了ajax吧?具体怎么处理的?是直接把后端的数据console.log一次性全部在控制台输出么?
后端传了多次数据
response.getWriter().println( timeList.toString() ); response.getWriter().println( "<br/>" ); response.getWriter().println( valueList.toString() );
这个是普通字符串,不是json格式,console不能直接解析为数组。
Map result = new HashMap(); result.put( "timeList", timeList ); result.put( "valueList", valueList ); String json = JSON.toJSONString( result ); response.getWriter().println( json );
这个是标准json格式,如果单独传这个段数据,console可以直接解析为数组。
两次加起来,组合后也同样不是json格式,只能认为是普通字符串,console不能解析。
java工程师2020版
- 参与学习 人
- 提交作业 9393 份
- 解答问题 16556 个
综合就业常年第一,编程排行常年霸榜,无需脱产即可学习,北上广深月薪过万 无论你是未就业的学生还是想转行的在职人员,不需要基础,只要你有梦想,想高薪
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星