【技能实训】DMS数据挖掘项目-Day01

本文涉及的产品
数据管理 DMS,安全协同 3个实例 3个月
推荐场景:
学生管理系统数据库
简介: 【技能实训】DMS数据挖掘项目-Day01

任务1 项目准备

一、开发环境

1.JDK8下载及其环境变量配置(JDK8以上版本)

2.IDE :Eclipse 或其他IDE

3.IDE的设置(可选):背景设置、编码设置等

4.数据库安装(MySQL)

二、系统简介

1.系统描述

DMS数据挖掘项目是一个基于C/S(Client/Server,客户/服务器)架构的系统,由DMS客户端和DMS服务器端两部分组成:

●DMS 客户端作为系统的一部分,其主要任务是对数据进行采集、分析和匹配,并将匹配成功的数据发送到DMS服务器端。

●DMS 服务器端用于接收DMS客户端发送来的数据,并将数据保存到数据库中,DMS服务器端对接收的数据提供监控功能。

DMS数据挖掘项目可以对多种数据类型进行采集,例如:日志数据信息的采集、物流数据信息的采集等,多种数据信息都是基于继承关系。


2.系统结构图


3.数据处理流程图


4.系统主要功能界面

三、项目创建

任务1:

1.创建项目dms_学号

2.搭建项目框架

任务2

【任务2.1】菜单项设计及其测试

在com.qst.dms.dos 下创建MenuDriver.java并进行测试

功能要求:

1.在控制台输出提示

  • 1、数据采集 2、数据匹配 *
  • 3、数据保存 4、数据显示(匹配数据) *
  • 5、数据发送 6、数据显示(原始数据) *
  • 0、退出应用 *

请输入菜单项(0-6):

2.依据提示,分别输入0-6后,打印输出相应提示,比如:输入1,打印“数据采集”等;当输入非0-6数据时,提示“请输入正确的菜单项(0-6)!”

程序设计

package com.qst.dms.dos;
import java.util.Scanner;
public class MenuDriver {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int choice;
        do {
            System.out.println("*************************");
            System.out.println("* 1、数据采集   2、数据匹配           *");
            System.out.println("* 3、数据保存   4、数据显示(匹配数据) *");
            System.out.println("* 5、数据发送   6、数据显示(原始数据) *");
            System.out.println("* 0、退出应用 *");
            System.out.println("*************************");
            System.out.print("请输入菜单项(0-6):");
            choice = scanner.nextInt();
            switch (choice) {
                case 1:
                    System.out.println("数据采集");
                    break;
                case 2:
                    System.out.println("数据匹配");
                    break;
                case 3:
                    System.out.println("数据保存");
                    break;
                case 4:
                    System.out.println("数据显示(匹配数据)");
                    break;
                case 5:
                    System.out.println("数据发送");
                    break;
                case 6:
                    System.out.println("数据显示(原始数据)");
                    break;
                case 0:
                    System.out.println("退出应用");
                    break;
                default:
                    System.out.println("请输入正确的菜单项(0-6)!");
                    break;
            }
        } while (choice != 0);
        scanner.close();
    }
}

测试:

要求全部可能情况都要测一遍(截图)

当你在控制台输入字符,特殊符号,字符串等等,程序会发生什么?如何处理?

会报错,可以添加异常处理。

添加异常处理后的程序:

package com.qst.dms.dos;
import java.util.InputMismatchException;
import java.util.Scanner;
public class MenuDriver {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int choice;
        do {
            try {
                System.out.println("*************************");
                System.out.println("* 1、数据采集   2、数据匹配           *");
                System.out.println("* 3、数据保存   4、数据显示(匹配数据) *");
                System.out.println("* 5、数据发送   6、数据显示(原始数据) *");
                System.out.println("* 0、退出应用 *");
                System.out.println("*************************");
                System.out.print("请输入菜单项(0-6):");
                choice = scanner.nextInt();
                switch (choice) {
                    case 1:
                        System.out.println("数据采集");
                        break;
                    case 2:
                        System.out.println("数据匹配");
                        break;
                    case 3:
                        System.out.println("数据保存");
                        break;
                    case 4:
                        System.out.println("数据显示(匹配数据)");
                        break;
                    case 5:
                        System.out.println("数据发送");
                        break;
                    case 6:
                        System.out.println("数据显示(原始数据)");
                        break;
                    case 0:
                        System.out.println("退出应用");
                        break;
                    default:
                        System.out.println("请输入正确的菜单项(0-6)!");
                        break;
                }
            } catch (InputMismatchException e) {
                System.out.println("请输入正确的菜单项(0-6)!");
                scanner.nextLine(); // 清空输入缓冲区
                choice = -1; // 设置一个无效的菜单项,使循环继续
            }
        } while (choice != 0);
        scanner.close();
    }
}

【任务2.2】使用数组存储采集的数据

在com.qst.dms.dos 下创建DataInputDemo.java并进行测试

功能要求:

1.在控制台输出提示,接收10个数据

请输入第1个采集数据:

……

请输入第10个采集数据:

2.输出采集的10个数据

程序设计

package com.qst.dms.dos;
import java.util.Scanner;
public class DataInputDemo {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int[] data = new int[10];
        System.out.println("请输入10个采集数据:");
        for (int i = 0; i < 10; i++) {
            System.out.print("请输入第" + (i + 1) + "个采集数据:");
            data[i] = scanner.nextInt();
        }
        System.out.println("采集的10个数据为:");
        for (int i = 0; i < 10; i++) {
            System.out.println("第" + (i + 1) + "个采集数据:" + data[i]);
        }
        scanner.close();
    }
}

测试:

要求全部可能情况都要测一遍

如何处理输入非数字字符的情况?

添加异常处理。

程序设计

package com.qst.dms.dos;
import java.util.InputMismatchException;
import java.util.Scanner;
public class DataInputDemo {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int[] data = new int[10];
        System.out.println("请输入10个采集数据:");
        for (int i = 0; i < 10; i++) {
            try {
                System.out.print("请输入第" + (i + 1) + "个采集数据:");
                data[i] = scanner.nextInt();
            } catch (InputMismatchException e) {
                System.out.println("请输入一个整数!");
                scanner.nextLine(); // 清空输入缓冲区
                i--; // 重新输入当前数据
            }
        }
        System.out.println("采集的10个数据为:");
        for (int i = 0; i < 10; i++) {
            System.out.println("第" + (i + 1) + "个采集数据:" + data[i]);
        }
        scanner.close();
    }
}

【任务2.3】控制显示采集的数据

在com.qst.dms.dos 下创建DataShow.java并进行测试

功能要求:

1.在控制台输出提示,接收10个数据

请输入第1个采集数据:

……

请输入第10个采集数据:

2.每行显示5个数据,输出采集的10个数据

程序设计

package com.qst.dms.dos;
import java.util.InputMismatchException;
import java.util.Scanner;
public class MenuDriver {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int choice;
        do {
            try {
                System.out.println("*************************");
                System.out.println("* 1、数据采集   2、数据匹配           *");
                System.out.println("* 3、数据保存   4、数据显示(匹配数据) *");
                System.out.println("* 5、数据发送   6、数据显示(原始数据) *");
                System.out.println("* 0、退出应用 *");
                System.out.println("*************************");
                System.out.print("请输入菜单项(0-6):");
                choice = scanner.nextInt();
                switch (choice) {
                    case 1:
                        System.out.println("数据采集");
                        break;
                    case 2:
                        System.out.println("数据匹配");
                        break;
                    case 3:
                        System.out.println("数据保存");
                        break;
                    case 4:
                        System.out.println("数据显示(匹配数据)");
                        break;
                    case 5:
                        System.out.println("数据发送");
                        break;
                    case 6:
                        System.out.println("数据显示(原始数据)");
                        break;
                    case 0:
                        System.out.println("退出应用");
                        break;
                    default:
                        System.out.println("请输入正确的菜单项(0-6)!");
                        break;
                }
            } catch (InputMismatchException e) {
                System.out.println("请输入正确的菜单项(0-6)!");
                scanner.nextLine(); // 清空输入缓冲区
                choice = -1; // 设置一个无效的菜单项,使循环继续
            }
        } while (choice != 0);
        scanner.close();
    }
}

测试:

要求全部可能情况都要测一遍

存在哪些可能的bug及修复?

输入非数字字符会报错,添加异常处理即可。

相关实践学习
MySQL基础-学生管理系统数据库设计
本场景介绍如何使用DMS工具连接RDS,并使用DMS图形化工具创建数据库表。
目录
相关文章
|
监控 数据挖掘 数据库
【技能实训】DMS数据挖掘项目(完整程序) 1
【技能实训】DMS数据挖掘项目(完整程序)
123 0
|
存储 数据挖掘 测试技术
【技能实训】DMS数据挖掘项目(完整程序)2
【技能实训】DMS数据挖掘项目(完整程序)
83 0
|
6月前
|
前端开发 Java 数据管理
javaWeb基于SSM框架开发的社区医疗数据管理系统【项目源码+数据库脚本+报告】
javaWeb基于SSM框架开发的社区医疗数据管理系统【项目源码+数据库脚本+报告】
106 0
|
6月前
|
数据管理 程序员 人工智能
后台数据管理系统 - 项目架构设计【黑马程序员】
后台数据管理系统 - 项目架构设计【黑马程序员】
253 0
后台数据管理系统 - 项目架构设计【黑马程序员】
|
存储 数据挖掘 Java
【技能实训】DMS数据挖掘项目-Day15
【技能实训】DMS数据挖掘项目-Day15
71 0

热门文章

最新文章