第三周总结

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
     <%@ page isELIgnored="false" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<script src="https://cdn.staticfile.org/echarts/4.3.0/echarts.min.js"></script>
 <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script type="text/javascript">

 </script>
<body>


<div align="center">
 <form action="servlet?method=zhuanfa" method="post">
       请输入要查询的日期<input type="date" value="2020-02-08" name="date"/>${selectmasg }
      <button value="确认查询">确认查询</button>
       </form>

  

 </div>
</body>
</html>
复制代码
复制代码
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
</head>
 
<body>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<!-- ECharts单文件引入 -->
<button class="btn btn-default" onclick="getAllConfirmed()" style="padding-top:20px;font-size:20px">中国疫情图图</button>
<div id="main" style="height:400px" ></div>
<div id="main2" style="height:400px"></div>
<script src="http://echarts.baidu.com/build/dist/echarts-all.js"></script>
<script src="https://cdn.staticfile.org/echarts/4.3.0/echarts.min.js"></script>
    <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
    <script type="text/javascript" src="china.js"></script>
<script type="text/javascript">
    // 基于准备好的dom,初始化echarts图表

    var dt;
  function getAllConfirmed(){
      
    $.ajax({
        url:"servlet?method=getconfirmed",
        async:true,
        type:"POST",
        data:{date1:"${date}",
             },
        success:function(data){
            dt = data;
            //alert(dt);
        },
        error:function(){
            alert("请求失败");
        },
        dataType:"json"
    });
 
            var myChart = echarts.init(document.getElementById('main'));
          /*  var xd = new Array(0);
            var yd = new Array(0);
            var zd = new Array(0);
            var wd = new Array(0);
            for(var i=0;i<35;i++){
                xd.push(dt[i].province);
                yd.push(dt[i].confirmed_num);
                zd.push(dt[i].cured_num);
                wd.push(dt[i].dead_num);
            }*/
            function getData1(){
                var jsonstr = [];
                for (var i = 0; i < 34; i++) {
                var json = {};
                json.name = dt[i].province;
                json.value = parseInt(dt[i].confirmed_num);
                jsonstr.push(json);
                }
                return jsonstr;
                }
            function getData2(){
                var jsonstr = [];
                for (var i = 0; i < 34; i++) {
                var json = {};
                json.name = dt[i].province;
                json.value = parseInt(dt[i].cured_num);
                jsonstr.push(json);
                }
                return jsonstr;
                }
            function getData3(){
                var jsonstr = [];
                for (var i = 0; i < 34; i++) {
                var json = {};
                json.name = dt[i].province;
                json.value = parseInt(dt[i].dead_num);
                jsonstr.push(json);
                }
                return jsonstr;
                }
            
    var option = {
        title : {
            text: '中国疫情图',
           
            x:'center'
        },
        tooltip : {
            trigger: 'item'
        },
        legend: {
            orient: 'vertical',
            x:'left',
            data:['确诊','治愈','死亡']
        },
        dataRange: {
            min: 0,
            max: 2500,
            x: 'left',
            y: 'bottom',
            text:['高','低'],           // 文本,默认为数值文本
            calculable : true
        },
        toolbox: {
            show: true,
            orient : 'vertical',
            x: 'right',
            y: 'center',
            feature : {
                mark : {show: true},
                dataView : {show: true, readOnly: false},
                restore : {show: true},
                saveAsImage : {show: true}
            }
        },
        roamController: {
            show: true,
            x: 'right',
            mapTypeControl: {
                'china': true
            }
        },
        series : [
            {
                name: '确诊',
                type: 'map',
                mapType: 'china',
                roam: false,
                itemStyle:{
                    normal:{label:{show:true}},
                    emphasis:{label:{show:true}}
                },
                data:getData1(),
            },
            {
                name: '治愈',
                type: 'map',
                mapType: 'china',
                itemStyle:{
                    normal:{label:{show:true}},
                    emphasis:{label:{show:true}}
                },
                data:getData2(),
            },
            {
                name: '死亡',
                type: 'map',
                mapType: 'china',
                itemStyle:{
                    normal:{label:{show:true}},
                    emphasis:{label:{show:true}}
                },
                data:getData3(),
            }
        ]
    };
    myChart.setOption(option);
  myChart.on('click', function (params) {
         var url = "servlet?method=getcitychange&provincename="+params.name;
          window.location.href =url;
    });
    
    }
  
  
</script>
</body>
复制代码
复制代码
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@page isELIgnored="false" %>
<!DOCTYPE html>
<head>
    <meta charset="utf-8">
    <title>ECharts</title>
</head>
 
<body>
<!-- 为ECharts准备一个具备大小(宽高)的Dom -->
<!-- ECharts单文件引入 -->

<div id="main" style="height:400px" ></div>

<script src="http://echarts.baidu.com/build/dist/echarts-all.js"></script>
<script src="https://cdn.staticfile.org/echarts/4.3.0/echarts.min.js"></script>
    <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
    <script type="text/javascript" src="china.js"></script>
<script type="text/javascript">
    // 基于准备好的dom,初始化echarts图表

    var dtr;

      
    $.ajax({
        url:"servlet?method=getcity",
        async:true,
        type:"POST",
        data:{},
        success:function(data){
            dtr = data;
            //alert(dt);
        },
        error:function(){
            alert("请求失败");
        },
        dataType:"json"
    });
    var provinces = {
            '上海':"json/11.json",
            '河北':'json/13.json',
            '山西':'json/14.json',
            '内蒙古':'json/15.json',
            '辽宁':'json/21.json',
            '吉林':'json/22.json',
            '黑龙江':'json/23.json',
            '江苏': 'json/32.json',
            '浙江': 'json/33.json',
            '安徽': 'json/34.json',
            '福建': 'json/35.json',
            '江西': 'json/36.json',
            '山东': 'json/37.json',
            '河南': 'json/41.json',
            '湖北': 'json/42.json',
            '湖南': 'json/43.json',
            '广东': 'json/44.json',
            '广西': 'json/45.json',
            '海南': 'json/46.json',
            '四川': 'json/51.json',
            '贵州': 'json/52.json',
            '云南': 'json/53.json',
            '西藏': 'json/54.json',
            '陕西': 'json/61.json',
            '甘肃': 'json/62.json',
            '青海': 'json/63.json',
            '宁夏': 'json/64.json',
            '新疆': 'json/65.json',
            '北京': 'json/11.json',
            '天津': 'json/12.json',
            '重庆': 'json/50.json',
            '香港': 'json/81.json',
            '澳门': 'json/82.json'
        };

            
          /*  var xd = new Array(0);
            var yd = new Array(0);
            var zd = new Array(0);
            var wd = new Array(0);
            for(var i=0;i<35;i++){
                xd.push(dt[i].province);
                yd.push(dt[i].confirmed_num);
                zd.push(dt[i].cured_num);
                wd.push(dt[i].dead_num);
            }*/
            function getData1(){
                var jsonstr = [];
                for (var i = 0; i < dtr.length; i++) {
                var json = {};
                json.name = dtr[i].city;
                json.value = parseInt(dtr[i].confirmed_num);
                jsonstr.push(json);
                }
                return jsonstr;
                }
            function getData2(){
                var jsonstr = [];
                for (var i = 0; i < dtr.length; i++) {
                var json = {};
                json.name = dtr[i].city;
                json.value = parseInt(dtr[i].cured_num);
                jsonstr.push(json);
                }
                return jsonstr;
                }
            function getData3(){
                var jsonstr = [];
                for (var i = 0; i < dtr.length; i++) {
                var json = {};
                json.name = dtr[i].city;
                json.value = parseInt(dtr[i].dead_num);
                jsonstr.push(json);
                }
                return jsonstr;
                }
           
           
                alert('ccccccccccc')
            var chart = echarts.init(document.getElementById("main"));
            $.getJSON(provinces['${pppp}'], function(data) {
                echarts.registerMap('${pppp}', data);
                chart.setOption(option = {
                        title : {
                            text: '疫情图',
                           
                            x:'center'
                        },
                        tooltip :{
                            trigger: 'item'
                        },
                        legend: {
                            orient: 'vertical',
                            x:'left',
                            data:['确诊','治愈','死亡']
                        
                        },
                        dataRange: {
                            min: 0,
                            max: 2500,
                            x: 'left',
                            y: 'bottom',
                            text:['高','低'],           // 文本,默认为数值文本
                            calculable : true
                        },
                        toolbox: {
                            show: true,
                            orient : 'vertical',
                            x: 'right',
                            y: 'center',
                            feature : {
                                mark : {show: true},
                                dataView : {show: true, readOnly: false},
                                restore : {show: true},
                                saveAsImage : {show: true}
                            }
                        },
                        roamController: {
                            show: true,
                            x: 'right',
                            mapTypeControl: {
                                'china': true
                            }
                        },
                        series : [
                            {
                                name: '确诊',
                                type: 'map',
                                mapType: '${pppp}',
                                roam: false,
                                itemStyle:{
                                    normal:{label:{show:true}},
                                    emphasis:{label:{show:true}}
                                },
                                data:getData1(),
                            },
                            {
                                name: '治愈',
                                type: 'map',
                                mapType: '${pppp}',
                                itemStyle:{
                                    normal:{label:{show:true}},
                                    emphasis:{label:{show:true}}
                                },
                                data:getData2(),
                            },
                            {
                                name: '死亡',
                                type: 'map',
                                mapType: '${pppp}',
                                itemStyle:{
                                    normal:{label:{show:true}},
                                    emphasis:{label:{show:true}}
                                },
                                data:getData3(),
                            }
                        ]
                        
                        
                })
            });      

</script>
</body>
复制代码
复制代码
package courseDao;

import java.io.IOException;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import Domin.Easy;
import Domin.Province;

public class ProvinceDao {
    /*public static void main(String[] args) throws ParseException {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String startStr="2020-02-08";
        Date date2 = sdf.parse(startStr);
        List<Province> pro=getProvince(date2);
        List<Easy> easy=new ArrayList<>();
        int flgas=0;
        for (Province province : pro) {
            
            if(easy.size()==0) {
                Easy newes=new Easy(date2,province.getProvince(),province.getConfirmed_num(),province.getYisi_num()
                        ,province.getCured_num(),province.getDead_num()    );
                easy.add(newes);        
            }
            else {
                int flag=0;
                int k=-1;
                for (int i = 0; i < easy.size(); i++) {
                   Easy es=new Easy();
                   es=easy.get(i);
                   if(es.getProvince().equals(province.getProvince())) {
                       flag=1;
                       k=i;
                   }
                  }
                if(flag==1) {
                    int a=Integer.parseInt(easy.get(k).getConfirmed_num());
                    int b=Integer.parseInt(province.getConfirmed_num());
                    easy.get(k).setConfirmed_num((a+b)+"");
                    easy.get(k).setCured_num((a+b)+"");
                    easy.get(k).setDead_num((a+b)+"");
                    easy.get(k).setYisi_num((a+b)+"");
                    easy.get(k).setDate(date2);
                }
                else if(flag==0) {
                    Easy newes=new Easy(date2,province.getProvince(),province.getConfirmed_num(),province.getYisi_num()
                            ,province.getCured_num(),province.getDead_num()    );
                    easy.add(newes);
                }
                }}
        
    }*/
     public static List<Province> getProvince(Date date1){
         Connection con=null;
            PreparedStatement psts=null;
            ResultSet rs=null;
            List<Province> ll=new ArrayList<Province>();
            SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd");
            String date2=formatter.format(date1);
                
                    try {
                        con=JDBCUtils.getConnection();
                        String sql="select * from info WHERE Date LIKE '%"+date2+"%'";
                        psts= con.prepareStatement(sql);
                        //psts.setString(1, date);
                        rs=psts.executeQuery();
                        while(rs.next()){
                            int id=rs.getInt("Id");
                            String province=rs.getString("Province");
                            String city=rs.getString("City");
                            String Confirmed_num=rs.getString("Confirmed_num");
                            String Yisi_num=rs.getString("Yisi_num");
                            String Cured_num=rs.getString("Cured_num");
                            String ciDead_numty=rs.getString("Dead_num");
                            String Code=rs.getString("Code");
                            Province newprovince=new Province(id,date1,province,city,Confirmed_num,Yisi_num,Cured_num,ciDead_numty,Code);
                            ll.add(newprovince);}
                    } catch (ClassNotFoundException | IOException | SQLException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
            
            return ll;
        }
    /* public static List<Province> getProvince(Date date1){
         Connection con=null;
            PreparedStatement psts=null;
            ResultSet rs=null;
            List<Province> ll=new ArrayList<Province>();
            SimpleDateFormat formatter= new SimpleDateFormat("yyyy-MM-dd");
            String date2=formatter.format(date1);
                
                    try {
                        con=JDBCUtils.getConnection();
                        String sql="select * from info WHERE Date LIKE '%"+date2+"%'";
                        psts= con.prepareStatement(sql);
                        //psts.setString(1, date);
                        rs=psts.executeQuery();
                        while(rs.next()){
                            int id=rs.getInt("Id");
                            String province=rs.getString("Province");
                            String city=rs.getString("City");
                            String Confirmed_num=rs.getString("Confirmed_num");
                            String Yisi_num=rs.getString("Yisi_num");
                            String Cured_num=rs.getString("Cured_num");
                            String ciDead_numty=rs.getString("Dead_num");
                            String Code=rs.getString("Code");
                            Province newprovince=new Province(id,date1,province,city,Confirmed_num,Yisi_num,Cured_num,ciDead_numty,Code);
                            ll.add(newprovince);}
                    } catch (ClassNotFoundException | IOException | SQLException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
            
            return ll;
        }
        */
}
复制代码
复制代码
 1 package Domin;
 2 
 3 import java.util.Date;
 4 
 5 public class Province {
 6     private int id;
 7     private Date date;
 8     private String province;
 9     private String city;
10     private String confirmed_num;
11     private String yisi_num;
12     private String cured_num;
13     private String dead_num;
14     private String code;
15     public Province() {
16         super();
17         // TODO Auto-generated constructor stub
18     }
19     public Province(int id, Date date, String province, String city, String confirmed_num, String yisi_num,
20             String cured_num, String dead_num, String code) {
21         super();
22         this.id = id;
23         this.date = date;
24         this.province = province;
25         this.city = city;
26         this.confirmed_num = confirmed_num;
27         this.yisi_num = yisi_num;
28         this.cured_num = cured_num;
29         this.dead_num = dead_num;
30         this.code = code;
31     }
32     public int getId() {
33         return id;
34     }
35     public void setId(int id) {
36         this.id = id;
37     }
38     public Date getDate() {
39         return date;
40     }
41     public void setDate(Date date) {
42         this.date = date;
43     }
44     public String getProvince() {
45         return province;
46     }
47     public void setProvince(String province) {
48         this.province = province;
49     }
50     public String getCity() {
51         return city;
52     }
53     public void setCity(String city) {
54         this.city = city;
55     }
56     public String getConfirmed_num() {
57         return confirmed_num;
58     }
59     public void setConfirmed_num(String confirmed_num) {
60         this.confirmed_num = confirmed_num;
61     }
62     public String getYisi_num() {
63         return yisi_num;
64     }
65     public void setYisi_num(String yisi_num) {
66         this.yisi_num = yisi_num;
67     }
68     public String getCured_num() {
69         return cured_num;
70     }
71     public void setCured_num(String cured_num) {
72         this.cured_num = cured_num;
73     }
74     public String getDead_num() {
75         return dead_num;
76     }
77     public void setDead_num(String dead_num) {
78         this.dead_num = dead_num;
79     }
80     public String getCode() {
81         return code;
82     }
83     public void setCode(String code) {
84         this.code = code;
85     }
86     @Override
87     public String toString() {
88         return "ʡ�ݣ�" + province + ", ���У�" + city
89                 + ", ȷ��������" + confirmed_num + ", ����������" + yisi_num + "����������" + cured_num
90                 + ", ����������" + dead_num;
91     }
92     
93 }
原文地址:https://www.cnblogs.com/yanwenhui/p/13087421.html