1、DataGrip连接hive数据库

DataGrip是JetBrains旗下的一款数据库管理软件,通过它能更方便的操作虚拟机中的hive数据库

 依次点击 +  -> 数据源 -> Apache Hive进入配置链接界面

 主机处填虚拟地址,用户密码填虚拟机账号密码(配置无误情况下仍可能连接失败,等候几分钟重试即可)

2、Java链接Linux的MySQL数据库

向项目中导入Jar包(我虚拟机的MySQL版本是5.x但使用8.x的jar包仍然能进行操作)

import java.sql.Connection;
import java.sql.Driver;
import java.sql.DriverManager;
import java.sql.SQLException;

public class Util {
    public Connection GetConnection(){
        String UserName = "root";
        String PassWord = "123456";
        String DataBase = "db001";
    //注意将URL中的地址换成虚拟机的地址 String URL
= "jdbc:mysql://192.168.88.161:3306/"+DataBase+"?useUnicode=true&characterEncoding=UTF-8"; try{ Class.forName("com.mysql.cj.jdbc.Driver"); Connection conn = DriverManager.getConnection(URL,UserName,PassWord); System.out.print("Success Connect"); return conn; }catch (SQLException | ClassNotFoundException e){ e.printStackTrace(); } System.out.print("Defeat Connect"); return null; } }

3、基于Echarts的数据可视化、基于ajax(jQuery)的异步更新(JavaWeb项目)

用到了echarts库和jquery库

下载地址(也可选择超链接导入的方式)

Download jQuery | jQuery

Index of /dist/echarts (apache.org)

 

//javaScript部分
<script src="echarts.js"></script> <script src="jquery.js"></script> <script type="text/javascript"> function Submit() { var date = document.getElementById('data').value; console.log(date); var ChartBar = echarts.init(document.getElementById('bar')); var ChartPie = echarts.init(document.getElementById('pie')); $.ajax({ url: "http://localhost:8080/demo230923_war_exploded/demoServlet", // 后端数据接口的URL type: "GET", // 请求类型,可以是GET或POST,取决于后端接口的要求 dataType: "json", // 期望的数据类型,可以是json、text等 data: { date: date }, success: function (data) { // 请求成功时的处理逻辑 console.log(data); // 打印获取到的数据 var option = { title: { text: '每日销售情况' }, tooltip: {}, legend: { data: ['销售额', '销售量'] }, xAxis: { data: data.map(function (entity) { return entity.sale_nbr; }) }, yAxis: {} , series: [{ name: '销售额', type: 'bar', data: data.map(function (entity) { return entity.round; }) }, { name: '销售量', type: 'bar', data: data.map(function (entity) { return entity.cnt; }) } ] }; ChartBar.setOption(option); ChartPie.setOption({ title: { text: '每日销售组成' }, series: [ { name: '销售额', type: 'pie', radius: '60%', data: data.map(function (entity) { return { name: entity.sale_nbr, value: entity.round }; }) } ] }); }, error: function (xhr, status, error) { // 请求失败时的处理逻辑 console.log("请求失败:" + error); } }); } </script>

 

//部分servlet
    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
        String date = request.getParameter("date");

        response.addHeader("Access-Control-Allow-Origin", "*");

        DemoDao demoDao = new DemoDao();
        ArrayList<JiChang> jc = demoDao.Data_jichang(date);
        ObjectMapper objectMapper = new ObjectMapper();
        String json = objectMapper.writeValueAsString(jc);
        System.out.println(date);
        response.setContentType("application/json");
        response.setCharacterEncoding("UTF-8");
        response.getWriter().write(json);
    }

 

posted on 2023-09-24 21:25  XiSoil  阅读(25)  评论(0)    收藏  举报