疫情地图可视化项目
- 本项目来源于开课吧开源项目,为前后端分离,我们 只对后端进行操作
1.服务器的搭建
-
我们打开阿里云,之后选择云服务器ECS进行购买或者试用(选择按量付费,此时我们的成本极低)
-
该项目使用的服务器如下
- 我们要在实例中对其进行操作,如果购买完没有在阿里云控制台的云服务器ECS中的实例中看到我们的服务器,记得修改上方的地址(为我们所购买的服务器所在地址)
-
在实例中将其关闭,点击右侧的更多-云盘和镜像-更换操作系统
-
我们将操作系统修改为宝塔控制面板
-
之后再次启动
-
接下来我们点击更多-网络和安全组-安全组配置,点击配置规则并添加成为如下
-
其中端口80为我们的http协议
-
端口8080为宝塔访问的入口,授权对象可自行设置,全0代表无限制,当然会不太安全!
-
我们接着通过右侧远程连接VNC,(由于本人无法通过Workbench远程连接/原因暂时未知,提示用户名密码不正确),在命令行中输入bt default
-
-
可获得宝塔的网址和密码
-
打开宝塔的网址
-
- 在软件商店中下载tomcat
- 安装完成后,在设置中进行配置修改,将69行的端口号改为80并重启
2.前后端整合上线
-
我们继续点击文件夹图标访问其所在位置
-
打开webapps-ROOT,对index.jsp进行编辑
-
可以将除了UTF-8那行以外的代码删掉,并修改为如下代码
<%@ page session="false" pageEncoding="UTF-8" contentType="text/html; charset=UTF-8" %>
<%@ page import = "java.net.URL"%>
<%@ page import = "java.net.URLConnection"%>
<%@ page import = "java.io.InputStream"%>
<%@ page import = "java.io.InputStreamReader"%>
<%@ page import = "java.io.BufferedReader"%>
<!DOCTYPE html>
<html lang="en">
<head>
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta charset="UTF-8">
<title>疫情地图</title>
<script type="text/javascript">
<%
//java执行区,每次都会执行
//1. 先准备一个URL类的对象 u
URL url = new URL("https://zaixianke.com/yq/all");
//2. 打开服务器连接,得到连接对象 conn
URLConnection conn = url.openConnection();
//3. 获取加载数据的字节输入流 is
InputStream is = conn.getInputStream();
//4. 将is装饰为能一次读取一行的字符输入流 br
BufferedReader br = new BufferedReader(new InputStreamReader(is,"UTF-8"));
//5. 加载一行数据
String text = br.readLine();
//6. 释放资源
br.close();
%>
var data = <%=text%>;
</script>
<script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
<script src="https://cdn.bootcss.com/echarts/4.7.0/echarts.min.js"></script>
<script src="http://cdn.zaixianke.com/china.js"></script>
<script src="http://cdn.zaixianke.com/world.js"></script>
</head>
<body>
<div id="main" style="width: 100%;height:600px;"></div> <br>