package com.Ajax练习.bean; public class word_bean { public int id; public String date; public String province; public String city; public String confirmed_num; public String yisi_num; public String cured_num; public String dead_num; public String code; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getDate() { return date; } public void setDate(String date) { this.date = date; } public String getProvince() { return province; } public void setProvince(String province) { this.province = province; } public String getCity() { return city; } public void setCity(String city) { this.city = city; } public String getConfirmed_num() { return confirmed_num; } public void setConfirmed_num(String confirmed_num) { this.confirmed_num = confirmed_num; } public String getYisi_num() { return yisi_num; } public void setYisi_num(String yisi_num) { this.yisi_num = yisi_num; } public String getCured_num() { return cured_num; } public void setCured_num(String cured_num) { this.cured_num = cured_num; } public String getDead_num() { return dead_num; } public void setDead_num(String dead_num) { this.dead_num = dead_num; } public String getCode() { return code; } public void setCode(String code) { this.code = code; } public static void main(String[] args) { // TODO 自动生成的方法存根 } }
package com.Ajax练习.DBUtil; import java.awt.List; import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import com.Ajax练习.bean.word_bean; import com.mysql.cj.xdevapi.JsonArray; import com.mysql.cj.xdevapi.JsonValue; import net.sf.json.JSONObject; import net.sf.json.JSONArray; public class world_DBUtil { public static String URL="jdbc:mysql://localhost:3306/payiqing?useUnicode=true&characterEncoding=GB18030&useSSL=false&serverTimezone=GMT&allowPublicKeyRetrieval=true"; public static String username="root"; public static String password="123456"; static java.util.Scanner scanner = new java.util.Scanner(System.in); //数据库连接 public static Connection getConnection() { try { Class.forName("com.mysql.cj.jdbc.Driver"); //Class.forName("com.mysql.cj.jdbc.Driver"); return DriverManager.getConnection(URL, username, password); } catch (Exception e) { // TODO: handle exception System.out.println("数据库连接失败"); e.printStackTrace(); } return null; } static public ArrayList<word_bean> select(String date) { Connection connection = getConnection(); String sql = "select * from info1 where date like '"+date+"%'"; ArrayList<word_bean> list = new ArrayList<>(); try { PreparedStatement ps = connection.prepareStatement(sql); ResultSet rSet = ps.executeQuery(); while(rSet.next()) { word_bean bean = new word_bean(); bean.setId(rSet.getInt(1)); bean.setDate(rSet.getString(2)); bean.setProvince(rSet.getString(3)); bean.setConfirmed_num(rSet.getString(5)); bean.setYisi_num(rSet.getString(6)); bean.setCured_num(rSet.getString(7)); bean.setDead_num(rSet.getString(8)); bean.setCode(rSet.getString(9)); list.add(bean); } for(int i=0;i<list.size();i++) { int id = list.get(i).getId(); String province = list.get(i).getProvince(); String confirmed_num = list.get(i).getConfirmed_num(); String yisi_num = list.get(i).getYisi_num(); String cured_num = list.get(i).getCured_num(); String dead_num = list.get(i).getDead_num(); String code = list.get(i).getCode(); System.out.println(id+" "+province+" "+confirmed_num+" "+yisi_num+" "+cured_num+" "+dead_num+" "+code); } } catch (SQLException e) { // TODO 自动生成的 catch 块 e.printStackTrace(); } return list; } public static void main(String[] args) { // TODO 自动生成的方法存根 String date = scanner.next(); select(date); } }
package com.Ajax练习.servlet; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; 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.Ajax练习.DBUtil.world_DBUtil; import com.Ajax练习.bean.word_bean; import net.sf.json.JSONArray; import net.sf.json.JSONObject; /** * Servlet implementation class world_servlet */ @WebServlet("/world_servlet") public class world_servlet extends HttpServlet { private static final long serialVersionUID = 1L; protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { // TODO Auto-generated method stub request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=UTF-8"); String date = request.getParameter("date"); System.out.println(date); ArrayList<word_bean> list = world_DBUtil.select(date); JSONArray jsonArray = new JSONArray(); for(int i = 0;i<list.size(); i++) { java.util.Map<String,Object> map = new HashMap<String, Object>(); map.put("province", list.get(i).getProvince()); map.put("confirmed_num", list.get(i).getConfirmed_num()); map.put("yisi_num", list.get(i).getYisi_num()); map.put("dead_num", list.get(i).getDead_num()); jsonArray.add(map); } response.getWriter().write(jsonArray.toString()); } /** * @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); } }
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script src = "js/echarts.min.js"></script> <script src="js/china.js"></script> <script type="text/javascript" src="js/jquery.min.js"></script> <title>Insert title here</title> </head> <style> .search{ 800px; height:60px; position:absolute; left:280px; text-align:center; padding-top:10px; } .box{ 800px; height:560px; position:absolute; left:280px; top:60px; } </style> <body > <div class="search">请输入日期:<input type="text" id="date"> <input type="button" value="搜索" onclick="fn()"></div> <div class="box"></div> </body> <script> function fn(){ var date = $("#date").val() $.post( "world_servlet", {date:date}, function (data){ if(data[1]!=null) { var num = []; for(var i=0;i<data.length;i++) { num[i]={}; num[i].name = data[i].province; num[i].value = data[i].confirmed_num; } //1.echarts初始化。 var myChart = echarts.init(document.querySelector(".box")); //2.设置图表配置项 var option = { title: { text: '中国疫情地图', subtext: '作者:杨青', left: 'center' }, tooltip: { trigger: 'item' }, legend: { orient: 'vertical', left: 'left', data: ['中国疫情数据'] }, visualMap: { type: 'piecewise', pieces: [ {min: 10000}, {min: 5000, max: 10000}, {min: 1000, max: 5000}, {min: 100, max: 1000}, {min: 0,max: 100} ], color: ['#E0022B', '#E09107', '#A3E00B'] }, toolbox: { show: true, orient: 'vertical', left: 'right', top: 'center', feature: { mark: {show: true}, dataView: {show: true, readOnly: false}, restore: {show: true}, saveAsImage: {show: true} } }, roamController: { show: true, left: 'right', mapTypeControl: { 'china': true } }, series: [ { name: '中国疫情数据', type: 'map', mapType: 'china', roam: false, label: { show: true, color: 'black' }, data:num } ] }; myChart.setOption(option); } }, "json" ) } </script>