Web局部刷新的实现


这是在做传感器的时候遇到的问题,当传感器出过来数值时,数据库更新,然后页面也跟着刷新,只要把数字刷新就好,不用刷新整个页面。

方法。利用ajax的数据传输方式来实现更新。

首先导入jquery的包,然后在引用

jsp端:


服务器端:

 

 
List list = DbPoolOp.gets_prescription_list((String)(request.getParameter("pid"))); System.out.println((String)(request.getParameter("pid"))); request.setCharacterEncoding("utf-8"); // 这里不设置编码会有乱码 response.setContentType("text/html;charset=utf-8"); response.setHeader("Cache-Control", "no-cache"); PrintWriter out = response.getWriter(); //String sb="[{\"people\":\"hyyyhhy\"},{\"peopl\":\"11111\"}]"; String sb="["; for (int i = 0; i < list.size(); i++) { if (i > 0) { sb+=","; //如果有多个值,值中间加逗号 } sb+="{\"mid\":\""+ list.get(i).getMid() + "\","; // 第一个参数名name任意 sb+="\"mname\":\"" + list.get(i).getMname() + "\","; // 第二个参数名 sb+="\"mweight\":\"" + list.get(i).getMweight() + "\","; // 第三个参数名 Medicine medic = DbPoolOp.findMedicine_by_id(list.get(i).getMid()); double yiqu = medic.getMweight() - medic.getNowweight(); sb+="\"yiqu\":\"" + yiqu + "\","; // 第四个个参数名 sb+="\"jindu\":\"" + yiqu*100/list.get(i).getMweight() + "\"}";// 第五个个参数名 } sb+="]"; System.out.println(sb); out.println(sb); // 数据传到jsp里面的data里面 out.flush(); out.close();

 

 

 


json的格式 String sb="[{\"people\":\"hyyyhhy\"},{\"peopl\":\"11111\"}]";一个{}里面代表组数据

 

你可能感兴趣的:(Javaweb)